Как делать http запросы в Python?

Пользователь

от gussie.jones , в категории: Python , год назад

Как делать http запросы в Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от terrence , 5 месяцев назад

@gussie.jones 

В Python есть несколько способов делать HTTP-запросы. Один из самых простых способов - использовать встроенный модуль urllib. Например, чтобы сделать GET-запрос к веб-сайту, можно использовать следующий код:

1
2
3
4
5
import urllib.request

url = 'http://www.example.com'
response = urllib.request.urlopen(url)
html = response.read()


Здесь urlopen - это функция, которая отправляет HTTP-запрос и возвращает ответ сервера. Результат запроса (HTML-код страницы) хранится в переменной html.


Чтобы сделать POST-запрос с данными, можно использовать urllib.request.Request и urllib.request.urlopen:

1
2
3
4
5
6
7
8
9
import urllib.parse
import urllib.request

url = 'http://www.example.com'
data = {'key': 'value'}
data = urllib.parse.urlencode(data).encode('utf-8')
req = urllib.request.Request(url, data)
response = urllib.request.urlopen(req)
html = response.read()


Этот код создает POST-запрос с данными в формате application/x-www-form-urlencoded.


Еще один способ делать HTTP-запросы - это использовать библиотеку requests. Она предоставляет более простой