Почему я не могу выбрать некоторые элементы на страницах Amazon с помощью scrapy? - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь проанализировать стандартный идентификационный номер Amazon (ASIN) со следующей страницы.

https://www.amazon.com/dp/B075GYWPCJ

Однако я не могу выбрать таблицу, включающую ASIN, из scrapy ответ.Как выбрать таблицу, чтобы можно было проанализировать данные в таблице?

import scrapy
from scrapy.crawler import CrawlerProcess

class AmazonSpider(scrapy.Spider):
    name = 'amazon.com'
    def start_requests(self):
        yield scrapy.Request('https://www.amazon.com/dp/B075GYWPCJ', self.parse)
    def parse(self, response):
        # This works.. :)
        print(response.xpath('//table[@id="HLCXComparisonTable"]'))
        # This doesn't work.. :(
        print(response.xpath('//table[@id="productDetails_detailBullets_sections1"]'))

process = CrawlerProcess()
process.crawl(AmazonSpider)
process.start()

1 Ответ

0 голосов
/ 26 сентября 2018

На Amazon многие вещи загружаются динамически.Таблица, которую вы пытаетесь получить, не загружается в DOM при открытии страницы.Вам нужно как-то вызвать страницу, чтобы загрузить это содержимое, чтобы захватить его.

...