( 更新代码 就在下面)
我有一个类:UrlData
, 生成一个 url 列表:
for url in urls:
rawMechSiteInfo = mech.open(url) #mechanize browse each url
mech_response = mech.response()
headers = mech_response.info()
print "headers ", headers.getheader('Content-Type').encode('utf-8')
return
此行:
print "headers ", headers.getheader('Content-Type').encode('utf-8')
什么都不输出
如果我做
print url_data.url_list()
在我的 view
,它的 throw :<Scan.urldata.UrlData object at 0x103e73f50>
我只是想解析一个
html
的 src标记如:<div class="s">
<div>
<div class="f kv" style="white-space:nowrap">
<cite class="vurls">www.somewebsite.com/</cite>
</div>
</div>
</div>
以下正在工作 在解析整个文档时:
HarvestLinks = 'h3',attrs={'class': 'r'}
或者
HarvestLinks = BSObjOfUrl.find('cite','vurls')
它似乎工作正常,但最后一个只返回一个结果并且有多个。
感谢那些到目前为止试图提供帮助的人,有什么进一步的想法吗?
最佳答案
检查 headers 变量的输出并报告回来,您似乎仍然有错误的编码:
def url_list(self):
#setup mechanize
###
### Mechanize settings are here.
###
for url in urls:
rawMechSiteInfo = mech.open(url) #mechanize browse each url
mech_response = mech.response()
headers = mech_response.info()
print "headers ", headers.getheader('Content-Type')
#results = unicode(mech_response.read())
#BSObjOfUrl = BeautifulSoup(results)
#HarvestLinks = BSObjOfUrl.find_all(u'cite', class_='vurls')
#return HarvestLinks
return
关于python - BeautifulSoup 解析返回空集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19730110/