Http.client работает, но запросы выдают тайм-аут чтения ⇐ Python

Программы на Python
Anonymous
Http.client работает, но запросы выдают тайм-аут чтения

Сообщение Anonymous »

Я просто пытаюсь понять. При использовании запросов запрос выдает 403 (когда без заголовков) или таймаут чтения (когда с заголовками). Выполняя то же самое с http.client, вы получаете в ответ код состояния 200.
URL-адрес, который я пытаюсь получить: https://img.uefa.com/ imgml/uefacom/uel/social/og-default.jpg
Код, который не работает:

Код: Выделить всё

import requests

url = 'https://img.uefa.com/imgml/uefacom/uel/social/og-default.jpg'

try:
response = requests.get(url, verify=False, timeout=10)  # Disable SSL verification
response.raise_for_status()
except requests.exceptions.RequestException as e:
print("Error:", e)
Работающий код:

Код: Выделить всё

import http.client
import ssl

conn = http.client.HTTPSConnection("img.uefa.com", context=ssl._create_unverified_context())
conn.request("GET", "/imgml/uefacom/uel/social/og-default.jpg")
response = conn.getresponse()
print(response.status, response.reason)
conn.close()
Я пробовал много всего, добавляя несколько заголовков, но ничего не помогло.
Следующая команда в Curl также работает

Код: Выделить всё

curl -v "https://img.uefa.com/imgml/uefacom/uel/social/og-default.jpg" --output image.jpg
Также работает открытие в браузере.
Примечание. Все запросы выполняются локально.
Запросы выполняются предпринять какие-либо действия, которые могут повлиять на решение этой проблемы?

Подробнее здесь: https://stackoverflow.com/questions/790 ... ad-timeout

Вернуться в «Python»