2011-04-21 35 views
1

我试图登录到一个aspx页面。这是我到目前为止有:帮助使用urllib登录到一个asp页面

o = urllib2.build_opener(urllib2.HTTPCookieProcessor()) 
urllib2.install_opener(o) 
page = 'http://page/LoginForm.aspx' 
raw_params = {'ctl00$ContentPlaceHolder1$usertext':'username','ctl00$ContentPlaceHolder1$passtext':'password', 'ctl00$ContentPlaceHolder1$IUlogin':'Login'} 
params = urllib.urlencode(raw_params) 
f = o.open(page,params) 
f = o.open('http://page/upload.aspx') #you cant access this unless you're logged in 

但是,这并不工作,我得到了一个服务器错误500(因为它未获得登录)。我可以很好地登录机械化...

+0

它使用基本身份验证,ntlm或? – 2011-04-22 12:13:28

回答

0

好的asp.net本身在许多方面是有问题的。我只能想象如何编码页面,但大多数asp.net提交是通过_doPostback以非常痛苦的方式完成的,它在其中设置了额外的隐藏字段。您可能想尝试阅读此http://www.xefteri.com/articles/show.cfm?id=18并查看生成的页面的网页