Python proporciona varios módulos para realizar solicitudes HTTP. Aquí veremos cómo hacer solicitudes usando los módulos `requests` y `http.client`.
Método 1: Usando el módulo `requests`
`requests` es un módulo muy popular que simplifica la realización de solicitudes HTTP. Si no lo tiene instalado, puede hacerlo con `pip install requests`.
Un ejemplo básico de una solicitud GET se ve así:
```python
import requests
response = requests.get(‘http://example.com’)
print(response.status_code)
print(response.text)
```
Si desea enviar parámetros con su solicitud GET, puede agregarlos a la URL o pasarlos como un diccionario en el argumento `params`:
```python
payload = {‘key1’: ‘value1’, ‘key2’: ‘value2’}
response = requests.get(‘http://example.com’, params=payload)
```
Para hacer una solicitud POST:
```python
payload = {‘key1’: ‘value1’, ‘key2’: ‘value2’}
response = requests.post(‘http://example.com’, data=payload)
```
Método 2: Usando el módulo `http.client`
`http.client` es un módulo de nivel bajo para hacer solicitudes HTTP y viene con Python, por lo que no necesita instalar nada.
```python
import http.client
conn = http.client.HTTPSConnection(“www.example.com”)
conn.request(“GET”, “/”)
res = conn.getresponse()
data = res.read()
print(data.decode(“utf-8”))
```
Si bien `http.client` puede hacer todo lo que `requests` puede hacer, generalmente es más complicado de usar, especialmente para solicitudes más complejas. En la mayoría de los casos, `requests` será la mejor opción.