отправка запроса https с сокетом в python - PullRequest
0 голосов
/ 15 апреля 2020

Я пытаюсь отправить запросы https с помощью сокета в python, однако я сталкиваюсь с этой ошибкой, даже когда я пытался использовать фрагмент в документации, чтобы проверить, есть ли проблема в моем коде или, возможно, где-то еще , вот фрагмент, который я взял из документации:

import socket
import ssl

hostname = 'www.python.org'
context = ssl.create_default_context()

with socket.create_connection((hostname, 443)) as sock:
    with context.wrap_socket(sock, server_hostname=hostname) as ssock:
        print(ssock.version())

и вот ошибка, которую я получаю:

Traceback (most recent call last):
File "file.py", line 7, in <module>
with socket.create_connection((hostname, 443)) as sock:
AttributeError: __exit__

я что-то здесь упускаю? , Мне нужно использовать сокеты, а не запросы или любую другую библиотеку

1 Ответ

0 голосов
/ 15 апреля 2020

Для python 2,7 необходимо выполнить следующие действия:

import socket
import ssl

hostname = 'www.python.org'
context = ssl.create_default_context()

sock = socket.create_connection((hostname, 443))
ssock = context.wrap_socket(sock, server_hostname=hostname)
print(ssock.version())
...