0

Scrapy を使用して Web ページをクロールしています。正常に動作する xpath Chrome 拡張機能を使用して、XPath セレクターを取得します。説明、価格など、製品ページで必要なものをすべて取得しています。

アイテムの小さな画像をクリックすると、そのアイテムの大きな画像がポップアップ表示されるので、この大きな画像をクロールしたいと考えています。しかし、この大きな画像に使用している Xpath は何も取得していません。また、ソース コードを表示すると、javascript 関数を使用してこれらのポップアップ イメージをロードしていることがわかります。これらの画像を取得する方法はありますか?

start_urls = ['http://www.flipkart.com/nokia-lumia-620/p/itmdgkwywkmaa2w4?pid=MOBDGH6AKH9ERJAF']

description = hxs.select('/html/body/div[@class=" fkart fksk-body line  "]/div[@id="fk-mainbody-id"]/div[@class="fk-content fksk-content enable-compare line"]/div[@class="fk-mproduct fk-mproduct-mobile "]/div[@class="mprod-section unit"]/div[@id="topsection"]/div[@class="mprod-summary lastUnit"]/div[@class="mprod-summary-title fksk-mprod-summary-title"]/h1/text()').extract()
price = hxs.select('/html/body/div/div/div/div/div/div/div/div/div/div/div/div/span/text()').extract()

image_urls = hxs.select('/html/body/div[@class="fk-ui-dialog fk-popup"]/div[@class="window alpha30 window-absolute"]/div[@class="content"]/div[@class="dialog-body"]/div[@id="pp-large-images-popup"]/div[@class="main-container"]/div[@class="pp-carousel-bd"]/div[@class="visible-image-large fk-text-center"]/img[@id="visible-image-large"]').extract()

結果 :

{'description': [u'Nokia Lumia 620'],
 'image_urls': [],
 'price': u'14999'}
4

1 に答える 1

0

小さなサムネイルの画像 URL のリストを取得するには、次の XPath を使用できます。

//div[@class="thumbs thumbs-small"]/img/@src

サムネイル画像の URL から大きな画像の URL を導き出すことができます。に置き換えるだけ40x40275x275、大きな画像の URL を取得できます。

于 2013-03-13T17:16:08.417 に答える