Wie lese ich den Header mit pycurl

Wie lese ich die Antwort-Header, die von einer PyCurl-Anfrage zurückgegeben wurden?

4 Solutions collect form web for “Wie lese ich den Header mit pycurl”

Es gibt mehrere Lösungen (standardmäßig sind sie fallen gelassen). Hier ist ein Beispiel mit der Option HEADERFUNCTION, mit der Sie eine Funktion angeben können.

Andere Lösungen sind Optionen WRITEHEADER (nicht kompatibel mit WRITEFUNCTION) oder setzen HEADER auf True, damit sie mit dem Körper übertragen werden.

#!/usr/bin/python import pycurl import sys class Storage: def __init__(self): self.contents = '' self.line = 0 def store(self, buf): self.line = self.line + 1 self.contents = "%s%i: %s" % (self.contents, self.line, buf) def __str__(self): return self.contents retrieved_body = Storage() retrieved_headers = Storage() c = pycurl.Curl() c.setopt(c.URL, 'http://www.demaziere.fr/eve/') c.setopt(c.WRITEFUNCTION, retrieved_body.store) c.setopt(c.HEADERFUNCTION, retrieved_headers.store) c.perform() c.close() print retrieved_headers print retrieved_body 
 import pycurl from StringIO import StringIO headers = StringIO() c = pycurl.Curl() c.setopt(c.URL, url) c.setopt(c.HEADER, 1) c.setopt(c.NOBODY, 1) # header only, no body c.setopt(c.HEADERFUNCTION, headers.write) c.perform() print headers.getvalue() 

Fügen Sie alle anderen Curl-Setopts wie nötig / gewünscht, wie FOLLOWLOCATION.

Anothr alternate, human_curl Verwendung: pip human_curl

 In [1]: import human_curl as hurl In [2]: r = hurl.get("http://stackoverflow.com") In [3]: r.headers Out[3]: {'cache-control': 'public, max-age=45', 'content-length': '198515', 'content-type': 'text/html; charset=utf-8', 'date': 'Thu, 01 Sep 2011 11:53:43 GMT', 'expires': 'Thu, 01 Sep 2011 11:54:28 GMT', 'last-modified': 'Thu, 01 Sep 2011 11:53:28 GMT', 'vary': '*'} 

Dies könnte oder wäre keine Alternative für Sie:

 import urllib headers = urllib.urlopen('http://www.pythonchallenge.com').headers.headers 
  • Konvertieren Sie curl Befehl zu pycurl
  • Wie kann ich meine PHP-Curl-Anfrage an Python implementieren?
  • Wie bekomme ich die Antwort von pycurl multi curl Anfragen
  • Pycurl in Pycharm verwenden
  • HandShake Failure in Python (_ssl.c: 590)
  • Urllib2 / pycurl in Django: Fetch XML, HTTP-Status überprüfen, HTTPS-Verbindung überprüfen
  • Was ist die Verwendung von pycurl.INFOTYPE_HEADER_OUT?
  • Was ist am besten in Python: urllib2, PycURL oder mechanisieren?
  • Wie bekomme ich die IP-Adresse von einer http-Anfrage über die Anforderungsbibliothek?
  • Formatierung von Redirect URI in Instagram API-Aufrufe
  • Wie zu stoppen, zu töten, zu stoppen oder schließen Sie eine PycURL-Anfrage in einem Stream Beispiel mit Twitter Stream gegeben
  • Python ist die beste Programmiersprache der Welt.