Code: Alles auswählen
#!/usr/bin/env python
import urllib2
import urllib
user_agent = 'Opera 9.7 (Windows NT 5.2; U; en)'
def getcontent(url,returnheader=False,cookie=None,postdata=None):
if cookie == None:
header = {'User-Agent' : user_agent}
else:
header = {'User-Agent' : user_agent, 'Cookie ' : cookie}
req = urllib2.Request(url,postdata,header)
response = urllib2.urlopen(req)
if returnheader == False:
return response.read()
else:
return (response.read(),response.info())
def getcookie(user,passwd):
content1 = getcontent('http://www.geocaching.com/login/default.aspx',True)
cookie=content1[1]['set-cookie'].split(';')[0]
pos1 = content1[0].find('id="__VIEWSTATE" value="')
pos2 = content1[0][pos1+24:].find('"')
VIEWSTATE = content1[0][pos1+24:pos1+24+pos2]
args = urllib.urlencode({'__EVENTTARGET': '','__EVENTARGUMENT': '','__VIEWSTATE': VIEWSTATE,'ctl00$ContentBody$4myUsername': user, 'ctl00$ContentBody$myPassword': passwd, 'ctl00$ContentBody$cookie': 'on', 'ctl00$ContentBody$Button1': 'Login'})
content2 = getcontent('http://www.geocaching.com/login/default.aspx',True,cookie,args)
return content2