2011-04-21 36 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並查看生成的頁面的網頁