我正在编写一个脚本来下载和处理历史股票价格。当我使用 urllib.request.urlopen 时,我在每个文件 (b'\xef\xbb\xbf) 中都有一个奇怪的文本前缀,当我使用 urllib.request.urlretrieve 时不存在,当我将 url 键入时也不存在浏览器(火狐)。所以我有一个答案,但我不知道为什么它首先会导致问题。我怀疑这可能是因为我强迫它成为一个字符串,但我不知道为什么会这样或者我将如何解决这个问题(除了使用 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()