Voici un exemple simple utilisant urllib2 qui ne l'authentification de base contre le GitHub de l'API.
import urllib2
u='username'
p='userpass'
url='https://api.github.com/users/username'
# simple wrapper function to encode the username & pass
def encodeUserData(user, password):
return "Basic " + (user + ":" + password).encode("base64").rstrip()
# create the request object and set some headers
req = urllib2.Request(url)
req.add_header('Accept', 'application/json')
req.add_header("Content-type", "application/x-www-form-urlencoded")
req.add_header('Authorization', encodeUserData(u, p))
# make the request and print the results
res = urllib2.urlopen(req)
print res.read()
En outre, si vous mettez cela dans un script et l'exécuter à partir d'un terminal, vous pouvez diriger la chaîne de réponse à " mjson.outil " pour activer jolie impression.
>> basicAuth.py | python -mjson.tool
Une dernière chose à noter, urllib2 prend uniquement en charge les OBTENIR & requêtes POST.
Si vous avez besoin d'utiliser d'autres verbes comme SUPPRIMER, METTRE, etc vous aurez probablement envie de prendre un coup d'oeil à PYCURL