#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Thu Apr 18 18:55:47 2019
@author: lg
"""
import pandas as pd
import pymysql
from sqlalchemy import create_engine
#engine = create_engine("mysql+pymysql://user:password@host:port/databasename?charset=utf8")
engine = create_engine("mysql+pymysql://root:root@127.0.0.1:3306/stock?charset=utf8")
import tushare as ts
cons = ts.get_apis()
ts.set_token('46fcca1e059c38cde5f56fe7748f53c274036cb8cf0c061c2056alg690')
pro = ts.pro_api()
jyrl=pro.trade_cal(exchange='', start_date='20190419', end_date='20190419')
jyrl1=jyrl[jyrl.is_open==1]
jyrl2=list(jyrl1.cal_date)
import pymysql.cursors
#连接配置信息
config = {
'host':'127.0.0.1',
'port':3306,
'user':'root',
'password':'root',
'db':'stock',
'charset':'utf8',
'cursorclass':pymysql.cursors.DictCursor,
}
# 创建连接
connection = pymysql.connect(**config)
cursor = connection.cursor()
def save_basic(jy):
df = pro.daily_basic(ts_code='', trade_date=jy,
fields='ts_code,trade_date,turnover_rate,turnover_rate_f,volume_ratio,pe,pe_ttm,pb,ps,ps_ttm,total_share,float_share,free_share,total_mv,circ_mv')
llk=['ts_code','trade_date','turnover_rate','turnover_rate_f','volume_ratio','pe','pe_ttm','pb','ps','ps_ttm','total_share','float_share','free_share','total_mv','circ_mv']
df1=df[llk]
print(jy)
df1= df.fillna(0.0)
# df1.to_sql(name = 'daily_basic',con = engine,if_exists = 'append',index = False,index_label = False)
num=df1.shape[0]
#
for p in range(num):
ty=df1.iloc[p]
# s1=(`ts_code`, `trade_date`, `open`, `high`, `low`, `close`, `pre_close`,`change`, `pct_chg`, `vol`, `amount`)
pp=tuple(ty.values)
sql = "REPLACE INTO `daily_basic` (`ts_code`,`trade_date`,`turnover_rate`,`turnover_rate_f`,`volume_ratio`,`pe`,`pe_ttm`,`pb`,`ps`,`ps_ttm`,`total_share`,`float_share`,`free_share`,`total_mv`,`circ_mv`) VALUES " +str(pp)
cursor.execute(sql)
connection.commit()
return None
for jy in jyrl2:
save_basic(jy)