我正在用美麗的湯來嘗試和刮一頁。用美麗的湯刮一頁的問題
我正在嘗試關注this教程。
我試圖提交股票代碼後,進入以下頁面的內容:
http://www.cboe.com/delayedquote/quotetable.aspx
的教程是在網頁的「GET」的方法,我的網頁是「POST 」。我想知道這是否是問題的一部分?
我想使用的第一個文本框 - 在那裏說:「對於延遲報價在下面輸入一個股票或指數符號」
相關代碼:
user_agent = 'Mozilla/5 (Solaris 10) Gecko'
headers = { 'User-Agent' : user_agent }
values = {'ctl00$ctl00$AllContent$ContentMain$ucQuoteTableCtl$txtSymbol' : 'IBM' }
data = urllib.urlencode(values)
request = urllib2.Request("http://www.cboe.com/delayedquote/quotetable.aspx", data, headers)
response = urllib2.urlopen(request)
通話沒有失敗,我沒有得到一套選項和價格返回給我,就像我交互式運行頁面時一樣。我有一堆亂碼的HTML。
在此先感謝!
嘗試使用GET而不是POST。我能夠使用GET工作。我只是將'?ticker = <股票代碼>'附加到URL並使用'urllib2.urlopen()'提交。從那裏,你可以用美麗的湯來解析結果。 – David 2012-08-04 00:08:22
謝謝你的幫助,大衛!它仍然不適合我。這裏是我的代碼:request =「http://www.cboe.com/delayedquote/quotetable.aspx?ticker=IBM」 response = urllib2.urlopen(request) htmltext = response.read() soup = BeautifulSoup (htmltext) – dorkboy 2012-08-06 17:32:47
嗯......當我上週嘗試時,它正在工作。這裏一定還有別的事情要做。今天我會試着玩這個。如果我誤導了你,道歉。 – David 2012-08-06 18:00:09