По словам Габи, содержимое загружается динамически. Вы можете увидеть это по:
- Открытие веб-сайта для удаления в Chrome (в Firefox также есть способ сделать это)
- Нажмите F12, чтобы открыть DevTools.
- Выберите вкладку «Сеть»
- Выберите «XHR» в качестве фильтра
- Выполните поиск (или перезагрузите сайт)
фильтр XHR
Вы увидите список предметов, который вам нужен:
search?cid=5168&isFacetsEnabled=true&globalShippingCountryCode=&globalShippingCurrencyCode=&locale=en_US&pageId=0
и если вы нажмете на него, вы увидите http-запрос с заголовками и ответ со всеми данными, которые вы хотите.
Чтобы сделать это на scrapy, это немного сложнее, вам нужно удалить эту ссылку, но используя метод «POST» вместо стандартного («GET»). Чтобы сделать это из скребкового паука:
yield scrapy.Request(url, self.parse_data, method="POST", headers=headers, body=body)
Там, где URL-адрес должен быть тем, который вы нашли в фильтре XHR, используется метод «POST», вы должны скопировать заголовки, которые мы нашли ранее, и в теле будут все параметры, относящиеся к тому, что вы ищете. От этого вы получите ответ JSON, который вы можете сохранить в файл или делать все, что хотите.
Если вам нужна дополнительная информация, дайте мне знать.
person
vmmc
schedule
05.12.2016