64位VISTA
的Python 3.1的Python 3.1代碼和錯誤
from urllib import request
a = request.urlopen('http://www.marketwatch.com/investing/currency/CUR_USDYEN').read(20500)
b = a[19000:20500]
idx_pricewrap = b.find('pricewrap')
context = b[idx_pricewrap:idx_pricewrap+80]
idx_bgLast = context.find('bgLast')
rate = context[idx_bgLast+8:idx_bgLast+15]
print(rate)
Traceback (most recent call last): File "c:\P31Working\test_urllib.py", line 4, in idx_pricewrap = b.find('pricewrap') TypeError: expected an object with the buffer interface Process terminated with an exit code of 1
我不知道那是什麼錯誤表示。
請幫忙。
非常感謝。在我看到您的答案之前,我在文檔中找到了一個相關示例,我認爲您可以用不同的方式進行建議。我會回答我自己的問題來證明這一點。 – NotSuper 2010-10-25 21:15:43
@NotSuper:是的,將網站解碼爲Unicode對象也是一個很好的解決方案。實際上它是更好的解決方案,但對於HTML網站,您可能更願意使用可自動檢測字符集的解析器庫(從HTTP頭或HTML內部的字符集定義,而不是採用UTF-8)。 – AndiDog 2010-10-25 21:37:04
我想了解如何使用解析器庫。你能指點我一些例子嗎?我認爲我可以用3.1做什麼? – NotSuper 2010-10-26 00:11:48