Heim >Backend-Entwicklung >Python-Tutorial >Sprechen Sie kurz über Pythons Pycurl module_python
PycURl ist eine Python-Bindungsbibliothek für libcurl, die in der Sprache C geschrieben ist. libcurl ist eine kostenlose, benutzerfreundliche URL-Transportbibliothek für clientseitige Anwendungen. Seine Funktionen sind sehr leistungsstark. PycURL ist eine sehr schnelle (siehe Multi-Concurrent-Operation) und funktionsreiche, aber etwas komplexe Schnittstelle.
pycurl ist eine in der Sprache C geschriebene libcurl-Python-Implementierung. Sie ist sehr leistungsfähig und unterstützt Betriebsprotokolle wie FTP, HTTP, HTTPS, TELNET usw. Beschreibung gängiger Methoden des
-Moduls:
close()-Methode, die der curl_easy_cleanup-Methode im libcurl-Paket entspricht, keine Parameter hat und das Schließen und Recycling implementiert Locken Sie Objekte.
·Perform()-Methode, die der curl_easy_perform-Methode im libcurl-Paket entspricht, hat keine Parameter und implementiert die Übermittlung von Curl-Objektanforderungen.
·setopt(option,value)-Methode, entsprechend der curl_easy_setopt-Methode im libcurl-Paket. Die Parameteroption wird durch die Konstante von libcurl angegeben. Der Wert des Parameterwerts hängt von der Option ab, die eine Zeichenfolge sein kann , Ganzzahl oder langer Typ, Dateiobjekt, Liste oder Funktion usw.
pycurl.Curl() #Curl-Objekt erstellen
c.setopt(pycurl.CONNECTTIMEOUT,5) #Wartezeit für die Verbindung, auf 0 gesetzt, um nicht zu warten
c.setopt(pycurl.TIMEOUT,5) #Timeout anfordern
c.setopt(pycurl.NOPROGRESS,0) #Ob der Download-Fortschrittsbalken blockiert werden soll, wenn nicht 0, blockiere es
c.setopt(pycurl. MAXREDIRS,5) #Geben Sie die maximale Anzahl von HTTP-Weiterleitungen an
c.setopt(pycurl.FORBID_REUSE,1) #Zwingen Sie die Verbindung nach Abschluss der Interaktion und nicht erneute Verwendung
c.setopt(pycurl.FRESH_CONNECT,1) # Erzwingen Sie den Erhalt einer neuen Verbindung, dh ersetzen Sie die Verbindung im Cache
c.setopt(pycurl.DNS_CACHE_TIMEOUT, 60) #Stellen Sie die Zeit zum Speichern von DNS-Informationen ein Der Standardwert beträgt 120 Sekunden
c.setopt(pycurl.URL, "http://www.baidu.com") #Geben Sie die angeforderte URL an
c.setopt(pycurl.USERAGENT,"Mozilla/5.2(kompatibel; MSIE6.0;WindowsNT5.1;SV1;.NETCLR1.1.4322;.NETCLR2 .0.50324)") #Konfigurieren Sie den Benutzeragenten, der den HTTP-Header anfordert
c.setopt(pycurl.HEADERFUNCTION,getheader) #Leiten Sie die Rückgabe HTTPPHEADER an die Rückruffunktion getheader
c.setopt(pycurl.WRITEFUNCTION,getbody) #Leiten Sie den zurückgegebenen Inhalt an die Rückruffunktion getbody
c.setopt(pycurl.WRITEHEADER,fileobj) #Leiten Sie den zurückgegebenen HTTPHEADER an fileobj file object
c.setopt(pycurl.WRITEDATA,fileobj) #Direct the return Der HTML-Inhalt wird an die fileobj-Dateiobjekt-Methode
·getinfo(option) weitergeleitet, die der Methode „curl_easy_getinfo“ im entspricht libcurl-Paket. Die Parameteroption wird durch die Konstante von libcurl
c=pycurl.Curl( ) #Erstellen Sie ein Curl-Objekt
c.getinfo(pycurl.HTTP_CODE) #Der zurückgegebene HTTP-Statuscode
c.getinfo(pycurl.TOTAL_TIME) #Die Gesamtzeit, die am Ende der Übertragung aufgewendet wurde
c.getinfo(pycurl .NAMELOOKUP_TIME) #Durch die DNS-Auflösung verbrauchte Zeit
c.getinfo(pycurl.CONNECT_TIME) #Zeit aufgewendeter Verbindungsaufbau
c.getinfo(pycurl.PRETRANSFER_TIME) #Zeitaufwand vom Verbindungsaufbau bis zur Vorbereitung der Übertragung
c.getinfo(pycurl.STARTTRANSFER_TIME) #Die Zeit, die vom Verbindungsaufbau bis zum Start benötigt wird Übertragung
c.getinfo(pycurl.REDIRECT_TIME) #Die Zeit, die für die Umleitung benötigt wird
c.getinfo(pycurl.SIZE_UPLOAD) #Paketgröße hochladen
c.getinfo(pycurl.SIZE_DOWNLOAD) #Paketgröße herunterladen
c.getinfo(pycurl.SPEED_DOWNLOAD) #Durchschnittliche Download-Geschwindigkeit
c.getinfo(pycurl.SPEED_UPLOAD) #Durchschnittliche Upload-Geschwindigkeit
c.getinfo(pycurl.HEADER_SIZE) #HTTP-Header-Größe
Verwandte Empfehlungen:
Das obige ist der detaillierte Inhalt vonSprechen Sie kurz über Pythons Pycurl module_python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!