import urllib.request
import re
import csv
import pandas as pd
from bs4 import BeautifulSoup
stocklist = ['aapl','goog','fb','amzn','COP']
for stocklist in stocklist:
optionsUrl = urllib.request.urlopen('http://finance.yahoo.com/q?s='+stocklist).read()
soup = BeautifulSoup(optionsUrl)
stocksymbol = ['Symbol:',''+stocklist+'']
optionsTable = [stocksymbol]+[
[x.text for x in y.parent.contents]
for y in soup.findAll('td', attrs={'class': 'yfnc_tabledata1','rtq_table': ''})
]
print(optionsTable)
my_df = pd.DataFrame(optionsTable).T
my_df.to_csv('test.csv', index=False, header=False)
我有这段代码。有人建议我用熊猫。我能够将列表中的数据写入CSV文件。但是CSV文件只包含COP的数据,而没有其他股票的数据(CSV文件只有一行数据,我假设它正在覆盖)。有人能告诉我我遗漏了什么或者修正这个代码吗?print(optionsTable)打印4行。。在
输出如下:
^{pr2}$
每次循环时都会覆盖csv。应收集所有数据,并在循环后将其写入csv:
您可以通过
这个
我建议您使用pandas-datareader,它是为您要做的事情而设计的。在
下面是一个小演示:
p
-是一只熊猫panel,我们可以用它来做有趣的事情:让我们看看小组里有什么
^{pr2}$选择数据
相关问题 更多 >
编程相关推荐