Почему не отправляется запрос на сайт с сервера?
Я пытаюсь получить данные о сайте через:
requests.get(url)
У меня все получается, могу распарсить HTML, часть сайта и другое. Но проблема в том, что запрос отправляется только с ПК. Стоит попробовать запустить тот же самый скрипт на сервере, и ошибка:
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='lolz.guru', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7ff6b72c3190>: Failed to establish a new connection: [Errno 110] Connection timed out'))
Что примечательно - ошибка возникает только при запросе на сайт https://lolz.guru/ на другие сайты с сервера запросы отправляются отлично.
Думал, что IP сервера в бане на данном сайте, но через прокси возникает та же ошибка.
Ответы (1 шт):
import requests
url = 'https://lolz.guru/'
r = requests.get(url)
ошибка:
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
с user-agent в заголовке:
import requests
url = 'https://lolz.guru/'
headers = {'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36'}
r = requests.get(url, headers=headers)
вернет код 200:
>>> r
<Response [200]>
в содержимом, правда, будет:
>>> r.content
b'<!doctype html><html><head><script src="/process-qv9ypsgmv9.js"></script></head><body><script>window.onload=function(){process();}</script><noscript><p>Please enable JavaScript and Cookies in your browser.</p></noscript></body></html>'
но это уже другой вопрос ))