Python:
Een HTTP-verzoek verzenden

Hoe:

De externe requests library van Python maakt het doen van HTTP-aanroepen een fluitje van een cent. Hieronder staat hoe je een eenvoudige GET-aanvraag stuurt:

import requests

response = requests.get('https://api.example.com/data')
print(response.status_code)  # Geeft de statuscode van de reactie weer
print(response.json())      # Als de reactie JSON bevat, drukt het af als een Python dict

Meer gedetailleerde POST-aanvraag met JSON payload en aangepaste headers:

import requests
import json

url = "https://api.example.com/submit"
data = {'key': 'value'}
headers = {'Content-Type': 'application/json'}

response = requests.post(url, data=json.dumps(data), headers=headers)

print(response.status_code)
print(response.json())

Diepere Duik

HTTP-verzoeken zijn hoe het web werkt — ze bestaan al sinds de vroege jaren 90. Alternatieven voor Python’s requests omvatten de standaardbibliotheek urllib, maar deze is een beetje omslachtiger.

Het begrijpen van hoe HTTP-verzoeken te versturen, omvat kennis van methoden (GET, POST, PUT, DELETE, enz.), statuscodes (bijv., 200 OK, 404 Niet Gevonden), headers en body data.

Voor streaming of asynchrone verzoeken, zou je de asynchrone tegenhanger van requests of het aiohttp-pakket kunnen verkennen. Onder de motorkap gebruiken deze bibliotheken Python’s socket voor ruwe netwerkcommunicatie.

Historisch gezien wordt requests beschouwd als de go-to vanwege zijn eenvoud en kracht, maar httpx, een nieuwere asynchrone-compatibele bibliotheek, wint terrein.

Zie Ook