Requests Una Libreria de Python para Python

Cuantos de nosotros no hemos estado trabajando con httplib2 y tenido que escribir código no Python (No pythonic way) mientras programamos algún proyecto el cual requiera cierta comunicación externa y nuestro código no queda como queremos, para ayudarnos ahi llega  Request.

Bueno para no cansarles mas el cuento he aqui algunos ejemplos de esta maravillosa libreria:

Simple GET request

 import json
 import requests
 resultado = requests.get('url.api') #awesome verdad?

Basic Auth request

## Y asi es un simple GET request con basic auth
    r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
    r.status_code
    200
    r.headers['content-type']
    'application/json; charset=utf8'
    r.encoding
##

Post request con un json payload:

##
    import json
    import requests
    rawPayload = {'nombre' : 'nombre'}
    resultado = requests.post('url.api',data=json.dumps(rawPayload))
##

Post request para enviar un archivo:

##
    import requests
    file = open('tu_archivo.file','r')
    result = requests.post('url.api',file={ 'file':file })
##

Referencias:

Presentacion

Documentacion oficial