過去の株価をダウンロードして処理するためのスクリプトに取り組んでいます。urllib.request.urlopenを使用すると、すべてのファイル(b'\ xef \ xbb \ xbf)に、urllib.request.urlretrieveを使用したときに存在しなかった、またはurlを入力したときに存在しなかった奇妙なテキストプレフィックスが表示されました。ブラウザ(Firefox)。答えはありますが、そもそもなぜそれが問題を引き起こしていたのかわかりません。文字列に強制したためかもしれませんが、それがなぜなのか、それをどのように回避するのか(代わりにurlretrieveを使用する以外)はわかりません。コードは以下のとおりです。関連する行は11行目です。後のコメント付きコードは、orlopenを使用していたときのものです。
#download a bunch of historical stock quotes from google finance
import urllib.request
symbolarray = []
symbolfile = open("symbols.txt")
for line in symbolfile:
symbolarray.append(line.strip())
symbolfile.close()
for symbol in symbolarray:
page = urllib.request.urlretrieve("http://www.google.com/finance/historical?q=NYSE:"+symbol+"&output=csv",symbol+".csv")
#datafile = open(symbol+".csv","w")
#datafile.write(str(page.read()))
#datafile.close()