2

私はスクレイピーでもう少し深く掘り下げようとしていますが、スクレイピングしているもののタイトルしか取得できず、詳細は取得できません。これが私がこれまでに持っているコードです:

from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from tcgplayer1.items import Tcgplayer1Item

class MySpider(BaseSpider):
    name = "tcg"
    allowed_domains = ["http://www.tcgplayer.com/"]
    start_urls = ["http://store.tcgplayer.com/magic/journey-into-nyx?PageNumber=1"]

    def parse(self, response):
        hxs = HtmlXPathSelector(response)
        titles = hxs.select("//div[@class='magicCard']")
        vendor = hxs.select("//tr[@class='vendor']")
        items = []

        for titles in titles:
            item = Tcgplayer1Item()
            item ["cardname"] = titles.select("//li[@class='cardName']/a/text()").extract()
            item ["price"] = vendor.select("//td[@class='price']/br/text()").extract()
            item ["quantity"] = vendor.select("//td[@class='quantity']/td/text()").extract()
            items.append(item)
        return items

結果を表示するための価格と数量を取得できません。各カードには、それぞれ独自の価格と数量を持つ複数のベンダーがあります。そこに問題があると思います。どんな助けでも大歓迎です。

4

2 に答える 2