我正在抓取谷歌搜索结果页面是存储在我自己的服务器。我使用下面的代码来抓取页面。在
from string import punctuation, whitespace
import urllib2
import datetime
import re
from bs4 import BeautifulSoup as Soup
import csv
today = datetime.date.today()
html = urllib2.urlopen("http://192.168.1.200/coimbatore/3BHK_flats_inCoimbatore.html_%94201308110608%94.html").read()
soup = Soup(html)
p = re.compile(r'<.*?>')
aslink = soup.findAll('span',attrs={'class':'ac'})
for li in soup.findAll('li', attrs={'class':'g'}):
sLink = li.find('a')
sSpan = li.find('span', attrs={'class':'st'})
print sLink['href'][7:] , "," + p.sub('', str(sSpan)).replace('.','')
print p.sub('', str(aslink)).replace('.','\n')
这里的问题是我在输出中得到了这个方括号
^{pr2}$此输出是从该行生成的
print p.sub('', str(aslink)).replace('.','\n')
我想知道为什么这个支架会来,我也想把它取下来。在
更新
这是我的页面http://jigar.zapto.org/coimbatore/3BHK_flats_inCoimbatore.html_%94201308110608%94.html
findAll()
返回一个列表。如果只需要一个元素,请使用.find()
,这将返回第一个结果:方括号是对list对象调用
^{pr2}$str()
的结果。或者,使用索引来获取一个元素:或者在
aslink
元素上循环。在但是,看起来好像您想从
span
元素中提取所有文本。不要使用正则表达式,只需向beauthulsoup查询所有文本内容:相关问题 更多 >
编程相关推荐