Python调用Tushare获取股市各类数据并导出到Excel

一、申请token

进入tushare官网注册账号,申请token,用于在程序中访问token接口

tushare官方地址:https://www.tushare.pro

二、获取股市信息

需注意的是,利用tushare接口获取部分信息时对积分有不同的要求,积分不足会造成访问权限受限的情况。高校学生可联系站方申请访问权限。
在这里可通过旧版接口访问指数信息。新版接口为tushare pro

import tushare as ts
import openpyxl

pro = ts.pro_api(token='***********yourtoken************')

# 旧版tushare接口获取国内股市指数
# 上证指数:sh; 深指:sz; 沪深300:hs00; 上证50:sz50; 中小板:zxb; 创业板cyb
df 
Python中,我们可以使用`tushare`库获取股票的日线数据,然后通过`pandas`处理数据并将其插入到SQLite、MySQL等数据库中。以下是基本步骤: 1. **安装必要的库**: 首先需要安装`tushare`和用于数据库操作的`pandas`、`sqlite3`或`sqlalchemy`(如果你选择更复杂的数据库如MySQL或PostgreSQL)。 ```bash pip install tushare pandas ``` 2. **设置tushare**: 注册一个tushare pro账号,并获取token,然后初始化它。 ```python import tushare as ts ts.set_token('your_tushare_token') # 替换为你的token pro = ts.pro_api() ``` 3. **获取股票日线数据**: 使用`pro.daily()`函数,传入股票代码获取数据。 ```python stock_code = '000001.SZ' # 以SH开头的是上海交易所的股票,其他类似 df_daily = pro.daily(ts_code=stock_code) ``` 4. **数据清洗和处理**: `df_daily`是一个DataFrame,你可以根据需求调整列名、填充缺失值、计算指标等。 5. **将数据插入数据库**: 这里我们以SQLite为例,使用`pandas`的`to_sql`方法。 ```python import sqlite3 # 创建连接 conn = sqlite3.connect('stock_data.db') df_daily.to_sql(stock_code + '_daily', conn, if_exists='replace') # 将DataFrame直接存储到表中 # 或者使用SQLAlchemy连接复杂数据库 from sqlalchemy import create_engine engine = create_engine('mysql+mysqlconnector://username:password@localhost/dbname') # 将df_daily转换为SQLAlchemy的Table对象 table = Table(stock_code + '_daily', metadata, autoload_with=engine) # 插入数据 with engine.begin() as connection: table.create() df_daily.to_sql(table.name, con=connection, if_exists='append') ``` 6. **关闭连接**: 最后别忘了关闭数据库连接。 ```python conn.close() # 如果使用了SQLite ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值