Yakagadziriswa: http python lib

Dambudziko guru rine chekuita ne http Python raibhurari nderekuti haina kunyanya mushandisi-inoshamwaridzika. Zvinogona kuve zvakaoma kune vanotanga kunzwisisa uye kushandisa, sezvo zvinoda ruzivo rwakawanda nezveHTTP protocol uye webhu kuvandudza zvakazara. Pamusoro pezvo, raibhurari haipe chero yakavakirwa-mukati kukanganisa kubata kana kugadzirisa maitiro, zvichiita kuti zviome kugadzirisa nyaya dzinogona kumuka kana uchishandisa raibhurari.

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

1. Mutsetse uyu unopinza iyo http.client module, iyo inopa chinongedzo chekuita zvikumbiro zveHTTP.
2. Mutsara uyu unogadzira chinongedzo kune webhusaiti www.example.com uchishandisa HTTPS protocol (iyo yakachengeteka kupfuura HTTP).
3. Mutsetse uyu unotumira chikumbiro cheGET kumudzi wedhairekitori we www.example.com (kureva, “/”).
4. Mutsara uyu unochengeta mhinduro kubva kuwww.example.com muchidimbu chinonzi r1, chinogona kushandiswa kuwana ruzivo nezvemhinduro (senge chimiro nechikonzero).
5. Pakupedzisira, mutsara uyu unodhinda mamiriro nechikonzero chemhinduro kubva pawww.example.com (semuenzaniso, “200 OK” kana “404 Not Found”).

Chii chinonzi HTTP lib muPython

HTTP lib muPython iraibhurari inopa chinongedzo chevatengi-parutivi HTTP kutaurirana. Inobvumira vanogadzira kutumira uye kugamuchira data painternet vachishandisa Hypertext Transfer Protocol (HTTP). Raibhurari inotsigira nzira dzakasiyana dzekusimbisa, kusanganisira yekutanga, digest, uye NTLM. Inotsigirawo marudzi akasiyana ezvikumbiro seGET, POST, PUT, DELETE uye HEAD. Pamusoro pezvo, inopa rutsigiro rwekuki uye redirect. HTTP lib muPython chishandiso chakakosha chekuvandudza webhu sezvo ichirerutsa maitiro ekuita zvikumbiro kumaseva ewebhu uye kubata mhinduro kubva kwavari.

Maitiro ekubatanidza kuHTTP muPython

Python inopa akati wandei mamodule ekuwana iyo internet uye kushanda neHTTP, kusanganisira:

1. urllib: Iyi ndiyo yakakosha module yekushanda nema URL muPython. Inopa mabasa ekuvhura uye kuverenga data kubva kuURL, pamwe nemabasa ekodhi uye decoding data.

2. zvikumbiro: Iyi iraibhurari inozivikanwa yebato rechitatu inorerutsa kuita zvikumbiro zveHTTP muPython. Inotsigira ese akajairwa nzira dzeHTTP (GET, POST, PUT, DELETE etc.), pamwe nekusimbisa uye makuki.

3. httplib: Iyi ndiyo yakaderera-level interface yekuita zvikumbiro zveHTTP muPython. Inotsigira ese akajairika nzira dzeHTTP (GET, POST, PUT etc.), asi haitsigire huchokwadi kana makuki kunze kwebhokisi.

Kuti ubatanidze kune sevha yeHTTP uchishandisa chero eaya mamodule, iwe unofanirwa kutanga wagadzira chinhu chekubatanidza nekuchipfuudza iyo URL yaunoda kubatanidza nayo:

import urllib

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

# kana kushandisa zvikumbiro

kupinza zvikumbiro

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

Kana uchinge wagadzira chinhu chako chekubatanidza unokwanisa kuishandisa kutumira chikumbiro cheHTTP nekudaidza chikumbiro chayo() nzira ine tambo ine nzira yaunoda (semuenzaniso GET kana POST) uye chero mamwe ma paramita aunoda kuisa muchikumbiro chako (semuenzaniso. misoro). Semuyenzaniso:

# kushandisa urllib

mhinduro = conn .request('GET', '/path/to/resource')

# kana kushandisa zvikumbiro

mhinduro = conn .request('POST', '/path/to/resource', data=data)

Chinhu chemhinduro chakadzoserwa chichava neruzivo nezve kodhi yechimiro yakadzoserwa nesevha (semuenzaniso 200 OK), chero misoro yakadzoserwa nesevha uye chero zvirimo zvakadzoserwa maererano nechikumbiro chako (semuenzaniso HTML).

akanakisa Python HTTP vatengi

1. Zvikumbiro: Zvikumbiro iraibhurari yakakurumbira yePython yekuita zvikumbiro zveHTTP. Zviri nyore kushandisa uye zvinopa huwandu hwakasiyana hwezvinhu, zvinosanganisira rutsigiro rwemaitiro akawanda echokwadi, kubatana kwekubatanidza, otomatiki zvinyorwa decoding, nezvimwe.

2. Urllib3: Urllib3 imwe yakakurumbira Python raibhurari yekuita zvikumbiro zveHTTP. Inotsigira nzira dzakasiyana dzekusimbisa, kubatana kwekubatanidza, otomatiki yemukati decoding, nezvimwe.

3. Aiohttp: Aiohttp iasynchronous Python library yekuita zvikumbiro zveHTTP. Inotsigira nzira dzakasiyana dzekusimbisa, kubatana kwekubatanidza, otomatiki yemukati decoding, nezvimwe.

4. httplib2: httplib2 ibhuku rakazara rePython rekuita zvikumbiro zveHTTP zvinotsigira nzira dzakasiyana-siyana dzechokwadi pamwe chete necaching uye compression features kuderedza kushandiswa kwebhanwidth paunenge uchitumira data yakawanda pamusoro pe network.

Related posts:

Leave a Comment