Scrapy перенаправляет меня даже при обработке статуса 302 - PullRequest
0 голосов
/ 31 декабря 2018

Я столкнулся с проблемой из-за соскоба с амазонки.Я продолжаю перенаправляться (302) на страницы, которые не дают никакого результата, хотя я использую (я считаю) соответствующие настройки.

Вот функция start_requests: я создаю поисковый URL на основе кодов продуктов, полученных из CSVfile:

def start_requests(self):
    input_file_products = open("file.csv", 'r', encoding="utf-8", errors="ignore")
    reader = csv.reader(input_file_products)
    for row in reader:
        if row:
            base_url = "https://www.amazon.fr/s/ref=nb_sb_noss?"
            "__mk_fr_FR=ÅMÅŽÕÑ&url=search-alias%3Daps&field-keywords="
            ean = row[0]
            absolute_url = base_url + ean
            yield scrapy.Request(
                absolute_url,
                meta={
                    'dont_redirect': True,
                    "handle_httpstatus_list": [302, 301],
                },
                callback=self.parse
            )

Однако я получаю такие коды: DEBUG: Scraped from <302 <a href="https://www.amazon.fr/s/ref=nb_sb_noss?3538280031515" rel="nofollow noreferrer">https://www.amazon.fr/s/ref=nb_sb_noss?3538280031515>

И не получаю никаких результатов.Я уже указал, что не перенаправлять как True, и обрабатывал коды 302 и 301 в соответствии с рекомендациями.

Как бы вы поступили?

1 Ответ

0 голосов
/ 31 декабря 2018

при поиске в строке поиска моя ссылка была: ссылка для поиска

, но она не совпадает с вашей, начиная с search-alias%3D и далее. Она может генерировать динамическую ссылку, обновите ссылку и попробуйте снова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...