1

发生“分段错误”,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 默认没有安装成功。

非常感谢亚伦

4

2 回答 2

1

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

于 2012-05-26T15:05:14.227 回答
0

他们要么重新引入了该错误,要么必须有其他原因导致此问题:

me:~$ scrapy version -v
Scrapy  : 0.16.3
lxml    : 3.0.2.0
libxml2 : 2.7.8
Twisted : 12.0.0
于 2013-01-15T16:32:32.390 回答