Python-förfrågningar: Allt du behöver veta



Den här bloggen leder dig igenom python-begäran-modulen i detalj. Du kommer att bekanta dig med GET- och POST-förfrågningar, sessionsobjekt, kakor och rubriker.

Python begär väskor nästan 400 000 nedladdningar varje dag. Detta nummer är tydligt nog för att förstå om populariteten hos detta . Under de senaste åren har python-programmeringsspråk blivit det mest önskade programmeringsspråket för många utvecklare. Koncepten och biblioteken som förfrågningar är en av de många anledningarna till att utvecklare övergår från andra programmeringsspråk till python. I den här bloggen kommer vi att gå igenom följande ämnen:

Vad är Python-förfrågningar?

Python-förfrågningar skrevs av Kenneth Reitz och licensierades under apache 2.0. Det är ett mänskligt HTTP-bibliotek som det nämns på den officiella dokumentationssidan. Det är lätt att använda och används i princip för att göra alla typer av HTTP-förfrågningar. Följande är några avancerade funktioner som förfrågningar kommer med:
  1. Håll dig vid liv och anslutningspooling
  2. Internationella domäner och webbadresser
  3. Sessioner med beständighet av kakor
  4. SSL-verifiering i webbläsarstil
  5. Automatisk avkodning av innehåll
  6. Grundläggande / smältautentisering
  7. Eleganta nyckel- / värdekakor
  8. Automatisk dekompression
  9. Unicode-responsorgan
  10. HTTP-proxy-stöd
  11. Uppladdningar av flera delar
  12. Streaming Nedladdningar
  13. Anslutningstidsavbrott
  14. Stora förfrågningar
Dessa är alla de avancerade funktionerna i biblioteket för pythonförfrågningar, låt oss försöka förstå varför använder vi pythonförfrågningar i första hand.

Varför använda Python-förfrågningar?

När det gäller varför använder vi pythonförfrågningar? anledningen är ganska enkel. När du använder pythonförfrågningar behöver du inte lägga till frågorna manuellt i dina webbadresser och formulärkoda postdata. Det gör vårt jobb enklare när vi gör http-förfrågningar av något slag.Nu när vi är bekanta med pythonförfrågningar och varför vi använder dem i python, kan vi försöka förstå hur vi ska installera förfrågningar i vårt projekt eller system.

Hur installerar jag Python-förfrågningar?

Installationsdelen är också mycket enkel. Om du har installerat pipenv-installationen på ditt system kan du helt enkelt köra följande kommando i terminalen.

$ pip installationsförfrågningar

Detta installerar förfrågningsbiblioteket på ditt system. Det finns ytterligare ett sätt att installera förfrågningar. Om du använder pycharm kan du lägga till förfrågningar på projekttolken i inställningarna. Det tjänar samma syfte som terminalen om biblioteket installeras på vårt projekt.Nu när vi är klara med installationen kan vi försöka förstå hur vi kommer att få och skicka förfrågningar i python.

Hur gör jag få & posta förfrågningar?

Get-begäran används i princip för att begära data från servern. Följande är syntaxen för att göra en get-begäran.
importförfrågningar res = requests.get ('url') #res är svarobjektet här.
Inläggsförfrågan används för att skicka de data som ska behandlas till servern. Följande är syntaxen för att göra en postförfrågan.
importera begäran nyttolast = {'key1': 'värde1'} res = begäranden.post ('url', data = nyttolast)
Nu när vi vet hur vi kan göra få och skicka förfrågningar, kan vi ta en titt på hur vi kan skicka parametrar till webbadressen med hjälp av get-begäran.

Skicka parametrar i en webbadress

Att skicka parametrar i en webbadress är lika enkelt som att göra en get-begäran. Följande är ett exempel för att skicka parametrar till url.
importera begäran nyttolast = {'key1': 'värde1', 'key2': 'värde2'} res = begäranden.get ('url', params = nyttolast) skriv ut (res.url) # detta kommer att skriva ut webbadressen med parametrarna gått igenom get-begäran.

Statuskod

Vi kan också kontrollera statuskoden, följande är koden för att kontrollera statuskoden:





dynamisk minnestilldelning i c ++
importförfrågningar res = requests.get ('url') skriva ut (res.status_code ())
Om koden returnerar 200 betyder det att det inte finns något fel och att begäran går bra. Om vi ​​gör en dålig begäran kommer koden att returnera kod som 404 eller 505 vilket ger upphov till ett http-fel.

Svar innehåll

Vi kan också läsa innehållet i serverns svar. Biblioteket avkodar automatiskt innehållet från servern.
importförfrågningar res = requests.get ('url') skriva ut (res.innehåll)

Förfrågningar har också en inbyggd json-avkodare.

slå samman sortera c ++ - matrisen
importförfrågningar res = requests.get ('url') print (res.json ()) # detta får svaret i json-format

Flerdelad filöverföring

Det är väldigt enkelt att ladda upp filer i flera delar med hjälp av förfrågningar.
importera begäran filer = {'fil': öppna ('filnamn', 'rb')} res = begäranden.post ('url', filer = filer) skriv ut (res.text)
För att skicka flera filer kommer vi att specificera flera filer i filparametern.

Kakor och rubriker

Vi kan se serverns svarsrubriker och kakor med hjälp av svarsobjektet. Följande är koden för att se serverns rubriker.
importförfrågningar res = requests.get ('url') skriv ut (res.headers)
Vi kan också skicka anpassade rubriker till webbadressen. Låt oss ta en titt på koden.
importera förfrågningsrubriker = {'key1': 'value1'} res = requests.get ('url', headers = headers) print (res.headers)
Förfrågningar ändrar inte dess beteende baserat på anpassade rubriker. De skickas helt enkelt till den slutliga begäran. småkakor kan också ses med hjälp av svarsobjektet.
importförfrågningar # för att skicka våra egna cookies kan vi använda cookies-parametern cookies = dict (cookies = 'working') res = requests.get ('url', cookies = cookies) print (res.text)

Cookies returneras i en RequestCookieJar, som fungerar som en ordlista men också erbjuder ett mer komplett gränssnitt, lämpligt för användning över flera domäner eller sökvägar.



Sessionsobjekt

Sessionsobjektet låter dig bestå vissa parametrar över förfrågningarna.
  • Består cookies i alla förfrågningar från sessionens instans
  • Använd urllib3-anslutningspooling
  • Betydande prestanda steg
  • Ett sessionobjekt har alla metoder för API för huvudförfrågningar
Följande är koden för att bestå några kakor över förfrågningar.
s = requests.session () s.get ('url') res = s.get ('url') print (res.text)

Fel och undantag

Följande är de fel och undantag som tas upp i en pythonförfrågan.
  • I händelse av nätverksproblem kommer förfrågningar att leda till ett ConnectionError-undantag.
  • Response.raise_for_status () ger upphov till ett HTTP-fel när det saknas statuskod.
  • Om det finns en timeout kommer det att leda till ett timeout-undantag
  • TooManyRedirects-undantaget tas upp om begäran överstiger det konfigurerade antalet maximala antalet omdirigeringar.
I den här bloggen har vi diskuterat python-begäran-modulen där vi har olika avancerade funktioner. Vi diskuterade installation och gör en get and post-begäran med svarsinnehållet och andra koncept i begäran bibliotek i python. Python-begäran-modulen är en av de många extraordinära funktionerna i programmeringsspråk för python . Du kan starta ditt lärande genom att registrera dig och upptäck möjligheterna med programmeringsspråk för python. Har du frågor? nämna dem i kommentarfältet, vi kommer tillbaka till dig.