やあみんな、ハウツー取引(__VIEWSTATE)
あなたが要求しようとしているとき、私は(不可解な「__VIEWSTATE」&ルシに対処する方法を把握しようとしていましたPOST)Pythonでページを作る!私のスクリプトの多くの問題の主な原因は...そして、私が答え/ソリューションを探していたときには、それほど多くの解決策(ほとんど0!)がないことを認識しています。 Unable to load ASP.NET page using Python urllib2 あなたは、私はすべての時間はあなたが働くのページ...をロード不可解なフィールドの値を解析することからなると私の解決策を与えているが、それは実際には非常に愚かだと見ることができます。このトピックで
: - )
for result in the_page.findAll('input', attrs={'name' : '__VIEWSTATE'}):
view_state = result['value']
for result_1 in the_page.findAll('input', attrs={'name' : '__EVENTVALIDATION'}):
event_validation = result_1['value']
for result_2 in the_page.findAll('input', attrs={'name' : '__PREVIOUSPAGE'}):
previous_page = result_2['value']
for result in the_page.findAll('input', attrs={'name' : '__EVENTTARGET'}):
event_target = result['value']
以降:
url = 'http://bandscore.ielts.org/search.aspx'
values = {
'__EVENTTARGET' : 'gdvSearchResults',
'__EVENTARGUMENT' : page,
'__VIEWSTATE' : view_state,
'__PREVIOUSPAGE' : previous_page,
'__EVENTVALIDATION' : event_validation,
'DropDownList1' : Country,
#'txtSearchInstitution' : '',
#'hdnSearchText' : '',
#'rdoFilter': '%25',
}
user_agent = 'Mozilla/5 (Solaris 10) Gecko'
headers = { 'User-Agent' : user_agent }
data = urllib.urlencode(values)
req = urllib2.Request(url, data, headers)
response = urllib2.urlopen(req)
thePage = response.read()
the_page = soup(thePage)
だからここには良い説明といくつかのより多くのリンク/いくつかは、解決策を提案している:
What does the __VIEWSTATE hold?
http://aspalliance.com/articleViewer.aspx?aId=135&pId=
http://msdn.microsoft.com/en-us/library/system.web.ui.losformatter.aspx
http://weblogs.asp.net/infinitiesloop/archive/2006/08/03/Truly-Understanding-Viewstate.aspx
http://msdn.microsoft.com/en-us/library/ms972976.aspx
Mechanize does not see some hidden form inputs?
Unable to load ASP.NET page using Python urllib2
は、私はすべて一緒に;-)
EDIT1、多くの人がそれに対処するための良い方法を見つけようとしていることを認識し、それでは、良い解決策を見つけるために試してみましょう:あまりにもことがわかりました、それに対処する方法