その点で、私はScrapyまたはpythonを使用することに比較的慣れていません。いくつかの異なるリンクから を抽出しようとしていますが、HTMLXPathSelector 式 (構文) の使用に問題があります。適切な構文について広範なドキュメントを調べましたが、まだ解決策を見つけていません。
「img src」を抽出しようとしているリンクの例を次に示します。
ページから img src url を抽出しようとしています
from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
class GeekSpider(BaseSpider):
name = "geekS"
allowed_domains = ["geek.com"]
start_urls = ["http://www.geek.com/articles/gadgets/kindle-fire-hd-8-9-on-sale-for-50-off-today-only-20121210/"]
def parse(self, response):
hxs = HtmlXPathSelector(response)
imgurl = hxs.select("//div[@class='article']//a/img/@src").extract()
return imgurl
x.select ステートメントの構文は理解できたと思いますが、この構文/メソッドは初めてなのでよくわかりません。
これが私のitems.pyファイルです。基本的には、このためのスクレイピーチュートリアルに従いました。
from scrapy.item import Item, Field
class GeekItem(Item):
imgsrc = Field()
明確にするために:私がやろうとしているのは、ページにある img src url を抽出することです。すでに把握しているすべての画像 src を抽出する必要はありません (はるかに簡単です)。
私はそれを絞り込み、img srcの特定のURLのみを抽出しようとしています。(このサイトの複数のページでこれを使用します)
どんな助けでも大歓迎です!
編集 - 更新されたコードgeek = geek() でいくつかの構文エラーが発生していたので、理解しやすく機能しやすいように少し変更しました