Заблокирован от сканирования данных с сайта в python - PullRequest
0 голосов
/ 15 апреля 2020

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

Я уже довольно давно пытаюсь сканировать данные с веб-сайта и не могу дозвониться до них. чем три страницы, для первых трех страниц веб-сайты позволяют мне получить доступ к данным, но после этого я не получаю никакого ответа и даже на несколько секунд перестаю получать ответ и в браузере. Веб-сайт использует API для получения всех данных, поэтому я даже не могу использовать BeautifulSoup, я подумал об использовании селена, но там тоже не повезло. Я использую библиотеку запросов python для получения данных и json для анализа. Для доступа ко всем продуктам на веб-сайте требуется метод post, поэтому я отправляю файлы cookie, заголовки и параметры, а также использую те же файлы cookie и c для следующих страниц.

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

Спасибо.

1 Ответ

0 голосов
/ 15 апреля 2020

Вот как вы можете разблокировать этот сайт. (Извините, не могу предоставить код, потому что, скорее всего, он не будет функционировать без моей информации о местоположении. Поэтому попробуйте метод, который я говорю, чтобы получить код).

  1. Откройте эту ссылку в Google Chrome> Откройте Инструменты разработчика, нажав Ctrl + Shift + I> Go на вкладку Сети. Там, go в XMR и найти «детали». Это выглядит так:

enter image description here

  1. Щелкните правой кнопкой мыши по нему, скопируйте его как Bash Curl.
  2. Go до Свернуть до запросов , вставить код и нажать клавишу ввода. Завиток конвертируется в запросы. Скопируйте его и запустите.
  3. Здесь последняя строка будет выглядеть так:
response = requests.post('https://www.kroger.com/products/api/products/details', headers=headers, cookies=cookies, data=data)

Это выполняет запросы. 4. Теперь после этого, когда мы извлекаем то, что нам нужно:

data = response.json() # saving as a dictionary

product = data['products'] # getting the product
Теперь из этих соскобленных данных возьмите все, что вам нужно. Happy Coding:)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...