私はPythonプログラムを使用してフォームを記入しようとしていますが、これは特定のサイトではうまく動作しますが、この特定のものではありません。urllib2.urlopen()は別の結果を返します
これはコードですが
query = {
'adults':'1',
'children':'0',
'infants':'0',
'trip':'RT',
'deptCode':'LOS',
'arrvCode':'ABV',
'searchType':'D',
'deptYear':'2011',
'deptMonth':'12',
'deptDay':'10',
'retYear':'2011',
'retMonth':'12',
'retDay':'11',
'cabin':'E',
'currency':'NGN',
'deptTime':'',
'arrvTime':'',
'airlinePref':''}
encoded = urllib.urlencode(query)
url = 'http://www.wakanow.com/ng/flights/SearchProcess.aspx?' + encoded
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers = { 'User-Agent' : user_agent }
req = urllib2.Request(url, encoded, headers)
response = urllib2.urlopen(req)
print 'RESPONSE:', response
print 'URL :', response.geturl()
headers = response.info()
print 'DATE :', headers['date']
print 'HEADERS :'
print '---------'
print headers
data = response.read()
print 'LENGTH :', len(data)
print 'DATA :'
print '---------'
print data
をsnipetそれはすべて正常に動作しますが、私が得る結果は私に正しい結果を与えることを、私は直接WebブラウザにURL全体を入力すると表示されるものではありません。
誰かが私を助けてくれるのはどういう問題なのでしょうか? urllib2.Request
ための第2のパラメータ(data
)が設けられている場合
その要求は私のために動作するようには思えません。これは、コードが実行されるときの '' 'url''の値です:[link](http://www.wakanow.com/ng/flights/SearchProcess.aspx?retYear=2011&airlinePref=&adults=1&searchType=D&retDay=11&retMonth = 12&arrvCode = ABV&deptDay = 10&trip = RT&deptMonth = 12&currency = NGN&deptCode = LOS&deptYear = 2011&infants = 0&deptTime =&children = 0&cabin = E)それはちょうどハングアップします。 (実際には私はサイトに接続できないようです。) – FakeRainBrigand