Запрашивает тайм-аут соединения SSL - PullRequest
0 голосов
/ 05 мая 2018

Я использую Python-запросы для отправки http-запросов на www.fredmeyer.com

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

1 Ответ

0 голосов
/ 05 мая 2018

Похоже, что на сайте включена фильтрация, запрещающая ботов или подобное. Следующий HTTP-запрос в настоящее время работает с сайтом:

GET / HTTP/1.1
Host: www.fredmeyer.com
Connection: keep-alive
Accept: text/html
Accept-Encoding:

Если заголовок Connection удален или его значение изменено на close, оно будет зависать. Если (пустой) заголовок Accept-Encoding отсутствует, он также будет зависать. Если строка Accept отсутствует, она вернет 403 Forbidden.

Для того, чтобы получить доступ к этому сайту с запросами, в настоящее время у меня работает следующее:

import requests
headers = { 'Accept':'text/html', 'Accept-Encoding': '', 'User-Agent': None }
resp = requests.get('https://www.fredmeyer.com', headers=headers)
print(resp.text)

Обратите внимание, что эвристика, используемая сайтом для обнаружения ботов, может измениться, поэтому это может перестать работать в будущем.

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