tushare是个免费的获取股票数据的网站,有两种下载方式:
方式1:直接在网站上查询该股票的数据后导出。
点击这里直接选择股票即可。
方式二:用Python获取。 该方法更适用于获取多支股票的数据。
tushare安装后直接使用即可。
pip install tushare
import tushare as ts
pro = ts.pro_api('....5fc6055f674e920f84b6457fbd23f71587d92abb6a......')#tushare登录后,个人中心,即可查看token号
# SH\SZ
# print(df)
stockList = [601633,601398]
start_date = 20100101
end_date = 20211101
saved = 'stock/' #数据保存地址
def getData(stockList,start_date,end_date,saved,save=False):
for s in stockList:
strS = str(s)
lS = len(strS)
if lS<6:
strS = '0'*(6-lS)+strS
ts_code =strS+ '.SH'
df = pro.daily(**{
"ts_code": ts_code,
"trade_date": "",
"start_date": start_date,
"end_date": end_date,
"offset": "",
"limit": ""
}, fields=[
"ts_code",
"trade_date",
"open",
"high",
"low",
"close",
"pre_close",
"change",
"pct_chg",
"vol",
"amount"
])
if len(df)==0:
ts_code =strS+ '.SZ'
df = pro.daily(**{
"ts_code": ts_code,
"trade_date": "",
"start_date": start_date,
"end_date": end_date,
"offset": "",
"limit": ""
}, fields=[
"ts_code",
"trade_date",
"open",
"high",
"low",
"close",
"pre_close",
"change",
"pct_chg",
"vol",
"amount"
])
if save:
df.to_csv(saved+'{}.csv'.format(s))
else:
print(df.head())
if __name__=='__main__':
# print(saved)
getData(stockList,start_date,end_date,saved)