最近在爬取贴吧过程中发现一个小问题,就是爬取好网页HTML信息后,进一步利用xpath爬取站内需要的链接时,返回结果一直是空列表,代码检查了4、5遍一点问题都没有,但就是返回空列表
class Spider(object):
def extract_url(self,html):
content=etree.HTML(html)
result=content.xpath('//div[@class="threadlist_title pull_left j_th_tit "]//a[@rel="noreferrer"]/@href')
print(result)
返回情况如下:
头都大了!!!
然后xpath爬取贴吧里的开头和结尾的一些内容发现都可以成功爬去到,才发现应该是HTML页面的问题导致没办法正常爬取数据。然后试着建了个HTML文档,把取到的HTML页面的源代码保存到里边一看…………
准备爬取的数据全是被注释了的……
知道问题后就好解决了,利用正则把源代码里的注释符修改,起不到注释的作用就好了
class Spider(object):
def extract_url(self,html):
html_new=html.replace(r'<!--','"').replace(r'-->','"')
content=etree.HTML(html_new)
result=content.xpath('//div[@class="threadlist_title pull_left j_th_tit "]//a[@rel="noreferrer"]/@href')
print(result)
数据到手,之后愿意怎么发挥就怎么发挥就好了