tushare存储到mysql_tushare连接mysql问题

system:OSX 10.11.6

python version:Python 3.5.2 :: Anaconda custom (x86_64)

tushare version:0.5.0

mysql version:Ver 14.14 Distrib 5.7.14, for osx10.11 (x86_64) using EditLine wrapper

tushare数据存储到mysql官方示例:

from sqlalchemy import create_engine

import tushare as ts

df = ts.get_tick_data('600848', date='2014-12-22')

engine = create_engine('mysql://user:passwd@127.0.0.1/db_name?charset=utf8')

#存入数据库

df.to_sql('tick_data',engine)

#追加数据到现有表

#df.to_sql('tick_data',engine,if_exists='append')

在把数据存储到mysql中,碰到python连接mysql问题:

ImportError: No module named 'MySQLdb'

解决方案:知乎讨论

python3.5不支持使用mysqldb ,使用pymysql或者mysql.connector替代。

命令:

pip install pymysql

重点:由于python3不再支持python-mysql, 直接改用PyMySQL的话 ,一定要改连接字符

mysql+pymysql://:@/[?]

修改后的代码示例:

import tushare as ts

import sys

from sqlalchemy import create_engine

def industrytodb():

#获取sina行业分类信息

industry_sina = ts.get_industry_classified("sina")

print(industry_sina, sep=' ', end='\n', file=sys.stdout, flush=False)

#获取申万行业分类信息

industry_sw = ts.get_industry_classified("sw")

print(industry_sw, sep=' ', end='\n', file=sys.stdout, flush=False)

# engine = create_engine('mysql://root:123456@localhost/stockdb?charset=utf8')

print("连接数据库", sep=' ', end='\n', file=sys.stdout, flush=False)

engine = create_engine('mysql+pymysql://root:123456@localhost/stockdb?charset=utf8')

print(engine, sep=' ', end='\n', file=sys.stdout, flush=False)

# industry_sina.to_sql('industry_sina_data',engine,if_exists='append')

# industry_sw.to_sql('industry_sw_data',engine,if_exists='append')

industry_sina.to_sql('industry_sina_data',engine)

industry_sw.to_sql('industry_sw_data',engine)

if __name__ == '__main__':

# 获取sina和申万行业分类信息

industrytodb()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值