J'essaie d'utiliser la bibliothèque Requests pour envoyer des cookies avec une demande de publication, mais je ne sais pas comment configurer les cookies en fonction de sa documentation. Le script est destiné à être utilisé sur Wikipedia, et le ou les cookie (s) à envoyer sont de cette forme:
enwiki_session=17ab96bd8ffbe8ca58a78657a918558e; path=/; domain=.wikipedia.com; HttpOnly
Cependant, le quickstart requests
documentation en donne le seul exemple:
cookies = dict(cookies_are='working')
Comment puis-je encoder un cookie comme ci-dessus en utilisant cette bibliothèque? Dois-je le créer avec la bibliothèque de cookies standard de python, puis l'envoyer avec la demande POST?
La dernière version de Requests construira CookieJars pour vous à partir de simples dictionnaires.
import requests
cookies = {'enwiki_session': '17ab96bd8ffbe8ca58a78657a918558'}
r = requests.post('http://wikipedia.org', cookies=cookies)
Prendre plaisir :)
Pour prolonger la réponse précédente, si vous associez deux demandes et souhaitez envoyer les cookies renvoyés de la première à la seconde (par exemple, maintenir une session active dans plusieurs demandes), vous pouvez procéder comme suit:
import requests
r1 = requests.post('http://www.yourapp.com/login')
r2 = requests.post('http://www.yourapp.com/somepage',cookies=r1.cookies)