私はScrapyまたはPythonを使用するのが比較的新しいです。私はいくつかの異なるリンクから抽出するために探していますが、HTMLXPathSelector式(構文)を使用している問題があります。私は、適切な構文についての広範な文書を見てきましたが、まだ解決策を見つけていません。ここでScrapy - xPathSelectorを使用してネストされた 'img src'を抽出します
私はから「IMG srcを」抽出しようとしていたリンクの例である:私はx.selectための構文を考え出したと思う
Page I am trying to extract the img src url from
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
私はこの構文/メソッドに慣れていないので、わからない。明確にするために
from scrapy.item import Item, Field
class GeekItem(Item):
imgsrc = Field()
:ここ
は、基本的には、このためのscrapyチュートリアルに続く、私のitems.pyファイルです私は何を探していますがページ上にあるIMGのsrc URLを抽出しています。私は、すでにわかっているすべてのイメージsrcを抽出する必要はありません(はるかに簡単です)。
私はそれを絞り込み、img srcのその特定のURLのみを抽出したいと考えています。 (私はこのサイト上の複数のページにこれを使用します)
何か助けていただきありがとうございます!
EDIT - 更新されたコード私は(オタク=オタクで、いくつかの構文エラーを得ていた)だから私は、うまくいけば、私はあなたのXPath式がもっとこのようにする必要があります信じて
クリック可能なリンク(つまり、「kindle-fire-hd.jpg」)の画像のみが必要ですか? – Talvalin
はい、正確です。私は画像自体を返そうともしません。画像のURLだけを保存することができます。 – Twhyler
混乱を避けるため、投稿された最初のスパイダーコードを更新し、2番目のスパイダーコードを削除してください。 :) – Talvalin