Isonjululwe: http python lib

Eyona ngxaki iphambili enxulumene nethala leencwadi lePython ye-http kukuba ayisebenzi kakhulu. Kungaba nzima kubaqalayo ukuqonda nokusebenzisa, njengoko kufuna ulwazi oluninzi malunga neprotocol yeHTTP kunye nophuhliso lwewebhu ngokubanzi. Ukongeza, ithala leencwadi aliboneleli ngayo nayiphi na impazamo eyakhelwe-ngaphakathi yokuphatha okanye ukulungisa ingxaki, ikwenza kube nzima ukulungisa iingxaki ezinokuvela xa usebenzisa ithala leencwadi.

import http.client 
conn = http.client.HTTPSConnection("www.example.com") 
conn.request("GET", "/") 
r1 = conn.getresponse() 
print(r1.status, r1.reason)

1. Lo mgca ungenisa imodyuli ye-http.client, ebonelela ngojongano lokwenza izicelo zeHTTP.
2. Lo mgca udala uxhumano kwiwebhusayithi ethi www.example.com usebenzisa i-HTTPS protocol (ekhuseleke ngakumbi kune-HTTP).
3. Lo mgca uthumela isicelo se-GET kwi-root directory ethi www.example.com (okt, “/”).
4. Lo mgca ugcina impendulo esuka ku-www.example.com kuguquguquko olubizwa ngokuba ngu-r1, olunokuthi ke lusetyenziswe ukufikelela kulwazi malunga nempendulo (efana nemeko nesizathu sayo).
5. Okokugqibela, lo mgca uprinta ubume nesizathu sempendulo ku-www.example.com (umz., “200 OK” okanye “404 Not Found”).

Yintoni i-HTTP lib kwiPython

I-HTTP lib kwiPython lithala leencwadi elibonelela ngojongano lomxhasi wecala lonxibelelwano lweHTTP. Ivumela abaphuhlisi ukuba bathumele kwaye bafumane idatha kwi-intanethi ngokusebenzisa i-Hypertext Transfer Protocol (HTTP). Ithala leencwadi lixhasa iindlela ezahlukeneyo zokungqinisisa, kuquka isiseko, ukugaya, kunye neNTLM. Ikwaxhasa iintlobo ngeentlobo zezicelo ezifana ne-GET, POST, PUT, DELETE ne HEAD. Ukongeza, ibonelela ngenkxaso yeekuki kunye nokuhanjiswa kwakhona. I-HTTP lib kwiPython sisixhobo esibalulekileyo sophuhliso lwewebhu njengoko yenza lula inkqubo yokwenza izicelo kwiiseva zewebhu kunye nokusingatha iimpendulo ezivela kubo.

Ungaqhagamshelwa njani kwiHTTP kwiPython

I-Python ibonelela ngeemodyuli ezininzi zokufikelela kwi-intanethi kunye nokusebenza nge-HTTP, kubandakanya:

1. urllib: Le yimodyuli engundoqo yokusebenza ngee-URL kwiPython. Ibonelela ngemisebenzi yokuvula kunye nokufunda idatha kwii-URL, kunye nemisebenzi yokufaka ikhowudi kunye nedatha ye-decoding.

2. izicelo: Eli lithala leencwadi lesithathu elidumileyo elenza lula ukwenza izicelo zeHTTP kwiPython. Ixhasa zonke iindlela eziqhelekileyo ze-HTTP (GET, POST, PUT, DELETE etc.), kunye nokuqinisekiswa kunye neecookies.

3. httplib: Le yi-interface yezinga eliphantsi lokwenza izicelo ze-HTTP kwiPython. Ixhasa zonke iindlela eziqhelekileyo zeHTTP (GET, POST, PUT etc.), kodwa ayixhasi ukuqinisekiswa okanye iicookies ngaphandle kwebhokisi.

Ukuqhagamshela kwiseva ye-HTTP usebenzisa nayiphi na kwezi modyuli, kufuneka kuqala wenze into yoqhagamshelo ngokugqithisela i-URL ofuna ukuyidibanisa:

ngenisa iurllib

conn = urllib.request.urlopen('http://www.example.com/')

# okanye usebenzisa izicelo

ukungenisa izicelo

conn = requests.get('http://www.example/com')

Wakuba wenze into yoqhagamshelwano lwakho ungayisebenzisa ukuthumela isicelo seHTTP ngokubiza isicelo sayo () indlela ngoluhlu oluqulathe indlela oyinqwenelayo (umzekelo, iGET okanye iPOST) kunye naziphi na iiparameters ezongezelelweyo onqwenela ukuzifaka kwisicelo sakho (umz. iiheader). Umzekelo:

# usebenzisa iurllib

impendulo = conn .sicelo('GET', '/indlela/ukuya/umthombo')

# okanye usebenzisa izicelo

impendulo = conn .sicelo('POST', '/indlela/ukuya/umthombo', idatha=data)

Into yempendulo ebuyisiweyo iya kuqulatha ulwazi malunga nekhowudi yesimo esibuyiswe ngumncedisi (umzekelo, 200 Kulungile), naziphi na iiheader ezithunyelwe emva ngumncedisi kunye nasiphi na isiqulatho esibuyiswe kwimpendulo yesicelo sakho (umzekelo HTML).

best Python HTTP abathengi

1. Izicelo: Izicelo yilayibrari eyaziwayo yePython yokwenza izicelo zeHTTP. Kulula ukuyisebenzisa kwaye ibonelela ngoluhlu olubanzi lweempawu, kubandakanya inkxaso yeendlela ezininzi zokuqinisekisa, ukudityaniswa koqhagamshelwano, ukuguqulelwa komxholo okuzenzekelayo, nokunye.

2. I-Urllib3: I-Urllib3 yenye ilayibrari yePython eyaziwayo yokwenza izicelo ze-HTTP. Ixhasa iindlela ezahlukeneyo zokungqinisisa, ukudityaniswa koqhagamshelwano, ukuguqulelwa komxholo okuzenzekelayo, kunye nokunye.

3. I-Aiohttp: I-Aiohttp lithala leencwadi lePython elingavumelaniyo lokwenza izicelo zeHTTP. Ixhasa iindlela ezahlukeneyo zokungqinisisa, ukudityaniswa koqhagamshelwano, ukuguqulelwa komxholo okuzenzekelayo, kunye nokunye.

4. I-httplib2: i-httplib2 yilayibrari yePython ebanzi yokwenza izicelo ze-HTTP ezixhasa iindlela ezahlukeneyo zokuqinisekisa kunye ne-caching kunye ne-compression features ukunciphisa ukusetyenziswa kwe-bandwidth xa uthumela inani elikhulu ledatha kwinethiwekhi.

Izithuba ezihambelanayo:

Shiya Comment