Scrapy チュートリアルに従っています。私のプロジェクトには、Scrapy または wget によって既にダウンロードされたファイルの解析が含まれます。そのために XPath セレクターを使用できることは理解していますが、これまでに見た例では、Scrapy の解析メソッドで呼び出される XPath セレクターが含まれているため、Scrapy によってダウンロードされたファイルでのみ機能します。ダウンロードしたファイルで XPath を直接使用する方法はありますか? 私は Python と Scrapy の両方の初心者であるため、スタンドアロンの非 Scrapy Python スクリプトで XPath を呼び出す方法が見つかりません。
2 に答える
1
ほとんどの場合、scrapyはlxml
xpathセレクターバックエンドとして使用します。
lxmlは任意のファイルで直接使用できます。
PS https://github.com/scrapy/scrapy/blob/master/scrapy/selector/lxmlsel.py
手動でResponseオブジェクトを作成し、それをHtmlXPathSelectorにフィードすることもできます(テストされていません)。
from scrapy.selector import HtmlXPathSelector
from scrapy.http import TextResponse
body = '<your html page here'
response = TextResponse(url = '', body = body, encoding = 'utf-8')
hxs = HtmlXPathSelector(response)
subcategories = hxs.select("your xpath query here")
print subcategories
于 2013-01-14T07:43:43.090 に答える
1
Beautiful Soup
すでにダウンロードしたファイルの解析に使用できます。使いやすい
http://www.crummy.com/software/BeautifulSoup/bs4/doc/
スクレイピーでパースしながらでもぜひ使ってみたいです
于 2013-01-14T08:31:31.087 に答える