Sol·licituds de Python: tot el que heu de saber



Aquest bloc us guiarà detalladament pel mòdul de peticions de Python. Us familiaritzareu amb les sol·licituds GET i POST, els objectes de sessió, les galetes i les capçaleres.

Python sol·licita gairebé 400.000 descàrregues diàries. Aquest nombre és prou evident per entendre sobre la popularitat d’aquest . En els darrers anys, el llenguatge de programació python s’ha convertit en el llenguatge de programació més desitjat per a molts desenvolupadors. Els conceptes i les biblioteques com les sol·licituds són un dels molts motius pels quals els desenvolupadors passen d'altres llenguatges de programació a python. En aquest bloc, revisarem els temes següents:

Què són les sol·licituds de Python?

Les sol·licituds de Python van ser escrites per Kenneth Reitz i amb llicència d'apache 2.0. És una biblioteca HTTP compatible amb els humans, ja que s'esmenta a la pàgina de documentació oficial. És fàcil d’utilitzar i s’utilitza bàsicament per fer tot tipus de sol·licituds HTTP. A continuació es detallen algunes funcions avançades que inclou les sol·licituds:
  1. Manteniu-vos vius i compartiu la connexió
  2. URL i dominis internacionals
  3. Sessions amb persistència de cookies
  4. Verificació SSL a l'estil del navegador
  5. Descodificació automàtica de contingut
  6. Autenticació bàsica / resum
  7. Galetes de clau / valor elegants
  8. Descompressió automàtica
  9. Cossos de resposta Unicode
  10. Suport del servidor intermediari HTTP
  11. Càrregues de fitxers multipart
  12. Descàrregues en temps real
  13. Temps d’espera de connexió
  14. Sol·licituds bloquejades
Aquestes són totes les funcions avançades de la biblioteca de sol·licituds de Python; provem d’entendre per què fem servir les sol·licituds de Python en primer lloc.

Per què utilitzar les sol·licituds Python?

Quan es tracta de per què fem servir peticions Python? el motiu és força senzill. Mentre utilitzeu les sol·licituds Python, no cal que afegiu manualment les consultes a les vostres adreces URL i que codifiquin els formularis. Facilita la nostra feina quan fem sol·licituds http de qualsevol tipus.Ara que ja estem familiaritzats amb les sol·licituds de Python i per què les fem servir en Python, intentem entendre com instal·larem les sol·licituds al nostre projecte o sistema.

Com s’instal·len les sol·licituds de Python?

La part d’instal·lació també és molt fàcil. Si teniu instal·lada la configuració de pipenv al vostre sistema, podeu executar l'ordre següent al terminal.

Sol·licituds d'instal·lació de $ pip

Això instal·larà la biblioteca de sol·licituds al vostre sistema. Hi ha un enfocament més per instal·lar les sol·licituds. Si utilitzeu pycharm, podeu afegir sol·licituds a l’intèrpret del projecte a la configuració. Té el mateix propòsit que el terminal en cas d’instal·lar la biblioteca al nostre projecte.Ara que ja hem acabat la instal·lació, intentem entendre com farem arribar i publicar sol·licituds a Python.

Com fer sol·licituds de recepció i publicació?

Obtenir sol·licitud s’utilitza bàsicament per sol·licitar les dades al servidor. A continuació es mostra la sintaxi per fer una sol·licitud d’obtenció.
les sol·licituds d'importació res = requests.get ('url') #res és l'objecte de resposta aquí.
La sol·licitud de publicació s’utilitza per enviar les dades que es processaran al servidor. A continuació es mostra la sintaxi per fer una sol·licitud de publicació.
importacions de sol·licituds payload = {'key1': 'value1'} res = requests.post ('url', data = càrrega útil)
Ara que ja sabem com podem obtenir i publicar sol·licituds, fem una ullada a com podem passar paràmetres a l'URL mitjançant la sol·licitud get.

Passar paràmetres en una URL

Passar paràmetres en una url és tan senzill com fer una sol·licitud d'obtenció. A continuació es mostra un exemple per passar paràmetres a l'URL.
peticions d'importació payload = {'key1': 'value1', 'key2': 'value2'} res = requests.get ('url', params = loadload) print (res.url) # això imprimirà l'URL amb els paràmetres ha passat per la sol·licitud d'obtenció.

Codi d’estat

També podem comprovar el codi d’estat, a continuació es mostra el codi per comprovar el codi d’estat:





què és flume en hadoop
sol·licituds d'importació res = requests.get ('url') print (res.status_code ())
Si el codi retorna 200, vol dir que no hi ha cap error i la sol·licitud està bé. Si fem una petició errònia, el codi retornarà un codi com ara 404 o 505, que generarà un error http.

Contingut de resposta

També podem llegir el contingut de la resposta del servidor. La biblioteca descodificarà automàticament el contingut del servidor.
sol·licituds d'importació res = requests.get ('url') print (res.content)

Les sol·licituds també tenen un descodificador json integrat.

tutorial del banc de treball mysql per a principiants
peticions d'importació res = requests.get ('url') print (res.json ()) # això obtindrà la resposta en format json

Càrrega de fitxers de diverses parts

És molt fàcil penjar fitxers de diverses parts mitjançant sol·licituds.
importar fitxers de sol·licituds = {'fitxer': obert ('nom del fitxer', 'rb')} res = requests.post ('url', fitxers = fitxers) imprimir (res.text)
Per enviar diversos fitxers, especificarem diversos fitxers al paràmetre fitxers.

Galetes i capçaleres

Podem veure les capçaleres i les galetes de resposta del servidor mitjançant l’objecte de resposta. A continuació es mostra el codi per veure les capçaleres del servidor.
sol·licituds d'importació res = requests.get ('url') print (res.headers)
També podem passar capçaleres personalitzades a la URL. Vegem el codi.
importar capçaleres de sol·licituds = {'key1': 'value1'} res = requests.get ('url', headers = headers) print (res.headers)
Les sol·licituds no canvien el seu comportament en funció de les capçaleres personalitzades. Simplement es passen a la sol·licitud final. galetes també es pot visualitzar mitjançant l'objecte de resposta.
sol·licituds d’importació #per passar les nostres pròpies cookies podem utilitzar el paràmetre cookies cookies = dict (cookies = 'working') res = requests.get ('url', cookies = cookies) print (res.text)

Les cookies es retornen en un RequestCookieJar, que actua com un diccionari, però també ofereix una interfície més completa, adequada per utilitzar-se en diversos dominis o camins.



Objecte de sessió

L'objecte de sessió us permet persistir certs paràmetres entre les sol·licituds.
  • Persisteix les galetes en totes les sol·licituds realitzades des de la instància de sessió
  • Utilitzeu l'agrupació de connexions urllib3
  • Increment de rendiment significatiu
  • Un objecte de sessió té tots els mètodes de l'API de sol·licituds principals
A continuació es mostra el codi per persistir algunes cookies entre les sol·licituds.
s = requests.session () s.get ('url') res = s.get ('url') imprimir (res.text)

Errors i excepcions

A continuació es mostren els errors i excepcions que es generen en una sol·licitud de Python.
  • En cas de problema de xarxa, les sol·licituds generaran una excepció ConnectionError.
  • Response.raise_for_status () generarà un error HTTP quan hi hagi un codi d'estat que no tingui èxit.
  • Si hi ha un temps d'espera, es generarà una excepció de temps d'espera
  • L'excepció TooManyRedirects es genera si la sol·licitud supera el nombre configurat del nombre màxim de redireccions.
En aquest bloc hem parlat del mòdul de peticions de Python en què disposem de diverses funcions avançades. Hem discutit sobre la instal·lació i la realització d'una sol·licitud de publicació i publicació amb el contingut de la resposta i altres conceptes a la biblioteca de sol·licituds de Python. El mòdul de sol·licituds de Python és una de les moltes funcions extraordinaris de la caixa llenguatge de programació python . Podeu iniciar el vostre aprenentatge inscrivint-vos a i descobreix les possibilitats del llenguatge de programació python. Té alguna consulta? mencioneu-los a la secció de comentaris, us respondrem.