如何通过tushare获取数据并添加进度条,写入到本地Excel文件

tushare官网地址:Tushare数据

欢迎大家注册体验

  1. 安装tushare库

在命令提示符或终端中输入以下命令,可使用pip安装tushare库:

pip install tushare
  1. 获取API token

在使用tushare库之前,需要先获取API token。在tushare官网注册账号并登录后,进入“个人中心”-“API Token”页面,即可获取到自己的token。

  1. 导入库和设置参数

在代码中导入需要的库,并设置需要获取的数据时间范围和token。

import tushare as ts
import pandas as pd
from datetime import datetime
from tqdm import tqdm

pro = ts.pro_api(token='your_token_here')
current_date_and_time = datetime.now()
current_date = current_date_and_time.strftime("%Y%m%d")
  1. 获取数据

使用tushare库提供的函数获取需要的数据,如下所示:

#IPO新股列表

​
df_new_share=pro.new_share(start_date='20230401', end_date='20230631')
#每日停复牌信息
df_suspend_d= pro.suspend_d(suspend_type='R', trade_date='20230410',start_date='20230401',end_date='20231231')
#日线行情
df_daily= pro.daily(ts_code='300364.SZ', start_date='20230401', end_date='20231231')
#上市公司基本信息
df_stock_company=pro.stock_company(ts_code='300364.SZ')

​

其中,每个函数的参数含义可在tushare官网的API文档中查看。

  1. 保存数据

使用pandas库将数据保存在Excel文件中,如下所示:

writer=pd.ExcelWriter('your_file_path_here')
df_new_share.to_excel(writer,index=False,sheet_name='IPO新股列表(每日19点更新)')
df_daily.to_excel(writer,index=False,sheet_name='日线行情(交易日每日15点~17点之间更新)')
df_suspend_d.to_excel(writer,index=False,sheet_name='每日停复牌信息')
df_stock_company.to_excel(writer,index=False,sheet_name='上市公司基本信息')
writer.save()

其中,ExcelWriter函数中的参数为Excel文件的路径和文件名,to_excel函数中的sheet_name参数为Excel文件中的工作表名。

  1. 添加进度条

使用tqdm库为代码添加进度条,提高代码的可读性和维护性,如下所示:#total=5表示总共需要执行5个任务,desc="正在获取数据"表示进度条的描述信息为"正在获取数据"

​
with tqdm(total=8, desc="正在获取数据") as pbar:
#IPO新股列表
df_new_share=pro.new_share(start_date='20230401', end_date='20230631')
pbar.update(1)
#每日停复牌信息
df_suspend_d= pro.suspend_d(suspend_type='R', trade_date='20230410',start_date='20230401',end_date='20231231')
pbar.update(1)
#日线行情
df_daily= pro.daily(ts_code='300364.SZ', start_date='20230401', end_date='20231231')
pbar.update(1)
#上市公司基本信息
df_stock_company=pro.stock_company(ts_code='300364.SZ')
pbar.update(1)

with tqdm(total=5, desc="正在保存数据") as pbar:
writer=pd.ExcelWriter('F:\chatgpt\龙虎榜\增强版龙虎榜PRO.xlsx')
df_new_share.to_excel(writer,index=False,sheet_name='IPO新股列表(每日19点更新)')
pbar.update(1)
df_daily.to_excel(writer,index=False,sheet_name='日线行情(交易日每日15点~17点之间更新)')
pbar.update(1)
df_suspend_d.to_excel(writer,index=False,sheet_name='每日停复牌信息')
pbar.update(1)
df_stock_company.to_excel(writer,index=False,sheet_name='上市公司基本信息')
pbar.update(1)
writer.save()

​

其中,with语句结合tqdm函数使用,total参数为任务数量,desc参数为进度条描述信息,pbar.update(1)语句在每个任务完成后更新进度条。

  1. 完整代码

以下为获取股票相关数据并保存在Excel文件中的完整代码:

​
import tushare as ts
import pandas as pd
from datetime import datetime
from tqdm import tqdm

pro = ts.pro_api(token='your_token_here')
current_date_and_time = datetime.now()
current_date = current_date_and_time.strftime("%Y%m%d")

with tqdm(total=8, desc="正在获取数据") as pbar:
#IPO新股列表
df_new_share=pro.new_share(start_date='20230401', end_date='20230631')
pbar.update(1)
#每日停复牌信息
df_suspend_d= pro.suspend_d(suspend_type='R', trade_date='20230410',start_date='20230401',end_date='20231231')
pbar.update(1)
#日线行情
df_daily= pro.daily(ts_code='300364.SZ', start_date='20230401', end_date='20231231')
pbar.update(1)
#上市公司基本信息
df_stock_company=pro.stock_company(ts_code='300364.SZ')
pbar.update(1)

with tqdm(total=5, desc="正在保存数据") as pbar:
writer=pd.ExcelWriter('your_file_path_here')
df_new_share.to_excel(writer,index=False,sheet_name='IPO新股列表(每日19点更新)')
pbar.update(1)
df_daily.to_excel(writer,index=False,sheet_name='日线行情(交易日每日15点~17点之间更新)')
pbar.update(1)
df_suspend_d.to_excel(writer,index=False,sheet_name='每日停复牌信息')
pbar.update(1)
df_stock_company.to_excel(writer,index=False,sheet_name='上市公司基本信息')
pbar.update(1)
writer.save()

​

以上就是使用tushare库获取股票数据并存储在Excel文件中的方法,希望对大家有所帮助。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值