Python Requests: подавайте proxies на request(), а не на Request
Поставяйте конфигурацията на прокси в API, който изпраща заявката, а не в конструктора на обекта Request, който описва HTTP съобщението.
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 в конструктора възниква, преди този обект да е изпълнил предвидената мрежова заявка.