Проходя по нескольким ссылкам во время просмотра веб-страниц - PullRequest
0 голосов
/ 07 декабря 2018

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

Сайт, который я пытаюсь очистить,амазонка.

Допустим, я начинаю с https://www.amazon.com/ (это мой 'start_url').Оказавшись там, я хочу найти что-то в строке поиска Amazon, например, «Ноутбуки», и пройти поиск.

Как это можно сделать?Я могу извлечь данные, если принудительно запустить начальный URL (например, URL для поиска ноутбуков: https://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=Laptop), но я не могу получить этот URL при запуске с домашней страницы Amazon.

1 Ответ

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

Если у вас есть несколько запросов на поиск, возможно, лучше позвонить им по-другому:

search_url = 'https://www.amazon.com/s?field-keywords={}'

def start_requests(self):
    keywords = ['laptop', 'something other']
    for keyword in keywords:
        yield Request(self.search_url.format(keyword))

def parse(self, response) 
    # parse your pages here
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...