Pandas,Tushare和Mariadb数据读写简单实践

第一步:导入包

import pandas as pd
import tushare as ts
from sqlalchemy import create_engine

第二步:初始化

初始化数据库,替换【】内的内容

engine_ts = create_engine('mysql://【数据库用户名(比如root)】:【数据库密码(比如123456)】@【数据库IP地址】:3306/【数据库名字】?charset=utf8&use_unicode=1')
例子:
engine_ts = create_engine('mysql://root:[email protected]:3306/gupiao?charset=utf8&use_unicode=1')

初始化tushare

注册Tushare获取TOKEN凭证
设置token

ts.set_token('your token here')
以上方法只需要在第一次或者token失效后调用,完成调取tushare数据凭证的 
设置,正常情况下不需要重复设置。也可以忽略此步骤,直接用pro_api('your 
token')完成初始化

初始化pro接口

pro = ts.pro_api()
如果上一步骤ts.set_token('your token')无效或不想保存token到本地,也可以 
在初始化接口里直接设置token:

pro = ts.pro_api('your token')
pro = ts.pro_api()

第三步:从tushare获取数据

指数每日行情

df = pro.index_daily(ts_code='399300.SZ')
或者按日期取
df = pro.index_daily(ts_code='399300.SZ', start_date='20180101', end_date='20181010')
上证指数000001.sh
上证50指数000016.sh
深圳成指399001.sz
创业板指数399006.sz
沪深300指数000300.sz

股票每日行情

df = pro.daily(trade_date=‘20200615) #日线,每天所有股票信息,没有复权的数据,就是显示的实际值
或者
前复权的每日数据adj='qfq'设置
df = ts.pro_bar(ts_code='000001.SZ', adj='qfq', start_date='20180101', end_date='20181011')

场内基金日线行情

df = pro.fund_daily(ts_code='基金代码【150018.SZ】', start_date='20180101', end_date='20181029')

第四步:数据库读写

从数据库读取数据

sql = """SELECT * FROM 表 LIMIT 20"""   #数据库查询语句
df = pd.read_sql_query(sql, engine_ts)    #执行查询

写数据

res = df.to_sql('sz50index_daily', engine_ts, index=False, 
                            if_exists='append', chunksize=5000) #把df里面的数据写到数据库

拓展阅读:免费python财经数据接口包Tushare


拓展阅读:10分钟MariaDB数据库初级教程

你可能感兴趣的:(Pandas,Tushare和Mariadb数据读写简单实践)