Seite 1 von 1

urllib - zusatezliche attribute definieren

Verfasst: Samstag 24. März 2007, 02:15
von Costi
wie kann ich denn mit urllib zb meinen user-agent oder accept typ aendern?


danke

Verfasst: Samstag 24. März 2007, 10:16
von rayo
Hi

Also entweder machst du es mit der urllib2. Da musst du dann einfach ein Request-Object erstellen und diese dann beim urlopen übergeben.

Ich habs mal mit der httplib gemacht, dazu ein kleiner Ausschnitt:

Code: Alles auswählen

import httplib
import urllib

host = 'www.google.ch'
method = 'GET' # oder POST/HEAD
url = '/'
post_dict = None

conn = httplib.HTTPConnection(host)
conn.putrequest(method, url)
conn.putheader('User-Agent','Mein eigener User-Agent')

if method == 'POST' and post_dict:
    data = urllib.urlencode(post_dict)
    conn.putheader('Content-Type', 'application/x-www-form-urlencoded')
    conn.putheader('Content-Length', str(len(data)))

conn.endheaders()

if post_dict:
    conn.send(data)

response = conn.getresponse()

data = response.read()
headers = response.getheaders()
code = response.status

print 'Antwort:',response.status, response.reason

conn.close()
Zu der urllib2 hab ich grad kein Beispiel zur Hand, jedoch in der PyDoc hats welche, hier das was du suchst:

Code: Alles auswählen

import urllib2
req = urllib2.Request('http://www.example.com/')
req.add_header('Referer', 'http://www.python.org/')
r = urllib2.urlopen(req)
Den Rest der Beispiele findest du hier

Gruss