解析html页面时,Scrapy的HTMLXPathSelector会导致“分段错误”

时间:2012-05-16 02:35:10

标签: python scrapy

发生'分段错误',scrapy停止运行。 检查网站网址后,我发现它应该属于一个标签 href属性但没有值。像这样:“<a href> dummy </a>” 我怀疑这是由lxml .so lib引起的,该怎么处理呢?在 至少可以防止蜘蛛停止问题。 我的代码片段:

hxs = HtmlXPathSelector(response)
sites = hxs.select('//a')
for site in sites:
   list_title= site.select('text()').extract()
   list_link = site.select('./@href').extract() #????(crash here when parsing <a href></a>)
顺便说一句,该网站被删除的是'http://mil.news.sohu.com/' 运行环境:scrapy 0.15.1和python 2.7.3,预安装openssl0.12,因为scrapy的openssl0.13默认安装不成功。

非常感谢 亚伦

2 个答案:

答案 0 :(得分:1)

我已经解决了这个问题。这是由scx默认安装的libxml2版本2.6.26引起的。将libxml2更新为2.7.4,已解决。

答案 1 :(得分:0)

他们要么重新引入了这个bug,要么还有另外一个导致这个问题的事情:

me:~$ scrapy version -v
Scrapy  : 0.16.3
lxml    : 3.0.2.0
libxml2 : 2.7.8
Twisted : 12.0.0