Requests предоставляет класс Request и функцию request, написанную строчными буквами. Изменение регистра может вызвать корректный API с неправильным списком аргументов вместо простой ошибки о неизвестной функции.

Объект Request описывает сообщение HTTP. Настройка прокси относится к API, который его отправляет. Для обычного вызова:

response = requests.request(
    'GET', 'https://example.com/',
    proxies=routes, timeout=15
)

Здесь routes — это сопоставление прокси, выбранное для этой операции. Для разрешённых публичных запросов список бесплатных прокси предлагает кандидатов, которых можно отформатировать протоколом, поддерживаемым этой установкой Requests. Передача того же ключевого слова proxies в конструктор requests.Request не эквивалентна.

Если приложение намеренно использует подготовленные запросы, держите подготовку сообщения и настройку отправки раздельно. Потоку отправки сеанса также нужны предусмотренное объединение окружения, тайм-аут, проверка и настройки прокси.

Исправьте несоответствие API до замены конечных точек прокси. TypeError в конструкторе возникает раньше, чем этот объект выполнил предусмотренный сетевой запрос.

Похожие статьи