1

「セグメンテーション違反」が発生し、scrapy が実行を停止します。Web サイトの URL を確認したところ、href 属性を持つが値のない 1 つのタグに属する必要があることがわかりました。次のように: " <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、scrapyのopenssl0.13デフォルトはそうではないため、openssl0.12を事前にインストールします正常にインストールします。

どうもありがとうアーロン

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 に答える