Как я могу отправить почтовый запрос без ответа python3 - PullRequest
0 голосов
/ 21 июня 2020

Я использую запросы lib python 3.8. У меня есть список из 20 URL-адресов, для каждого из которых я создаю поток. внутри потока я (пока True) отправляю почтовый запрос на адрес, иногда адрес занят, и время ответа становится высоким. Как я могу отправить запрос сразу. Мне не нужны данные ответа

1 Ответ

0 голосов
/ 21 июня 2020

Для этого можно использовать простой сокет, примерно так:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send(f"POST /{URL} HTTP/1.1\r\nHost: {HOST}\r\nContent-Type: application/json\r\nContent-Length: {LENGTH}\r\n\r\n{CONTENT}")

Или, как вариант, использовать таймаут (его размер переменный) запросов lib:

try:
    requests.post(f"http://{HOST}:{PORT}/{URL}/",timeout=0.1)
except requests.exceptions.ReadTimeout: 
    pass
...