JQData数据提取及MySQL简单操作——基于Python
JQData平台真的挺不错,平台数据可以免费使用一年,满足绝大多数人需求,具体账号获取请自行百度哟~
因需要高频数据而Wind也只给近三年,再要还得购,,机缘遇到这一平台,获得了账号试用很不错,分享一下,有更好数据源希望不吝赐教呢(▼㉨▼メ)
1 # -*- coding: utf-8 -*- 2 """ 3 Created on Sat May 26 19:50:50 2018 4 5 @author: Luove 6 """ 7 8 from jqdatasdk import *#平台给的包,务必加载,地址:https://github.com/JoinQuant/jqdatasdk/archive/master.zip 9 import numpy as np 10 import pandas as pd 11 import csv 12 auth('***','***')#依次输入账号、密码,链接到平台数据库 13 14 # 市场整体数据获取 15 #get_all_securities(types='stock',date) 16 #types,为列表,可以为stock/fund/index/futures/etf/lof/fja(分级A)/fjb,为空时返回所有股票不含基金指数期货;date日期表获取这一日期还在上市的股票默认None表获取所有日期股票 17 #上海证券交易所 .XSHG ‘600519.XSHG’ 贵州茅台 18 #深圳证券交易所 .XSHE ‘000001.XSHE’ 平安银行 19 #中金所 .CCFX ‘IC9999.CCFX’ 中证500主力合约 20 #大商所 .XDCE ‘A9999.XDCE’ 豆一主力合约 21 #上期所 .XSGE ‘AU9999.XSGE’ 黄金主力合约 22 #郑商所 .XZCE ‘CY8888.XZCE’ 棉纱期货指数 23 #上海国际能源期货交易所 .XINE ‘SC9999.XINE’ 原油主力合约 24 index = get_all_securities(types='index') 25 stock = get_all_securities() 26 df = get_all_securities(['fund']) 27 get_all_securities(date='2015-10-24')[:5] 28 29 stock[:2] 30 len(stock) 31 type(stock) 32 33 34 # 单个标的信息采集 35 get_security_info('000001.XSHG').type 36 assert get_security_info('502050.XSHG').parent == '502048.XSHG' 37 38 # return component stocks,list 39 hs300 = get_index_stocks('000300.XSHG') # hs300 component stocks 40 41 # 股票代码格式转化,转化为XSHG/XSHE 42 #normalize_code(code) 43 for code in ('000001', 'SZ000001', '000001SZ', '000001.sz', '000001.XSHE'): 44 print(normalize_code(code)) 45 # 融资融券标的(股票列表) 46 get_margincash_stocks() 47 get_marginsec_stocks() 48 49 50 51 # 交易行情获取 52 # 获取交易日,都那天交易 53 get_trade_days(start_date='2018-01-01',end_date='2018-05-05') 54 55 #get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None) 56 #获取一支或者多只股票的行情数据, 按天或者按分钟,这里在使用时注意 end_date 的设置, 不要引入未来的数据 57 get_price() 58 hsdata = get_price('000300.XSHG',start_date='2013-01-01',end_date='2016-10-31',frequency='5m',skip_paused=True) 59 zxbdata = get_price('399005.XSHE',start_date='2013-01-01',end_date='2016-10-31',frequency='5m',skip_paused=True) 60 cybdata = get_price('399006.XSHE',start_date='2013-01-01',end_date='2016-10-31',frequency='5m',skip_paused=True) 61 62 #hsdata = pd.DataFrame(hsdata) 63 #zxbdata = pd.DataFrame(zxbdata) 64 #cybdata = pd.DataFrame(cybdata) 65 # pandas 文件输出输入操作 66 # save as csv file/pandas.DataFrame.to_excel/csv 67 test.to_csv('D:/Analyze/Python Matlab/Python/DataLib Py/test.csv') 68 hsdata.to_csv('D:/Analyze/Python Matlab/Pyxlrdthon/DataLib Py/hs.csv') 69 zxbdata.to_csv('D:/Analyze/Python Matlab/Python/DataLib Py/zxb.csv') 70 cybdata.to_csv('D:/Analyze/Python Matlab/Python/DataLib Py/cyb.csv') 71 72 #defaults to ',' for read_csv(), \t for read_table() 73 74 c = pd.read_csv('D:/Analyze/Python Matlab/Python/DataLib Py/test.csv') 75 76 77 # save as excel file 78 writer = pd.ExcelWriter('output.xlsx') 79 test.to_excel(writer,'Sheet1') 80 writer.save() 81 82 b = pd.read_excel('output.xlsx', sheet_name='Sheet1') 83 84 # 操作DataFrame行列名 85 c.columns.values.tolist() 86 c1=c.rename(columns={'Unnamed: 0':'date'}) 87 c.rename(columns={'Unnamed: 0':'date'},inplace=True) # inpalce表示改变自身而非另外生成一个拷贝 88 c.columns.values.tolist() 89 c1.columns.values.tolist() 90 91 92 # 链接MySQL 93 import pymysql 94 # 查询,需要事先熟悉数据库 95 ##host='127.0.0.1',user='***',password='***',db='test';星号号处填上数据库的对应口令即可,test是你要预先MySql中建立的库 96 db = pymysql.connect(host='127.0.0.1',user='***',password='***',db='test') 97 cur=db.cursor() 98 99 sq1='select * from test_table' 100 try: 101 cur.execute(sq1) 102 results=cur.fetchall() 103 print('date','height','weight','bmi') 104 for row in results: 105 date=row[0] 106 height=row[1] 107 weight=row[2] 108 bmi=row[3] 109 print(date,height,weight,bmi) 110 except Exception as e: 111 raise e 112 finally: 113 db.close() 114 115 # 创建表 116 # creat a table,named hs5 117 # 存在则先删除 118 #cur.execute('DROP TABLE IF EXISTS hs5') #和下面效果一致 119 #cur.execute("drop table if exists hs5") # 无此句,若已存在,会报错 120 sq2='''create table hs5(date datetime,open float(16),close float(16),high float(16),low float(16),volume float(16),money float(16)) engine=innodb charset utf8''' 121 cur.execute(sq2) 122 123 # 插入表 124 125 from sqlalchemy import create_engine 126 #conn = create_engine('mysql+mysqldb://root:password@localhost:3306/databasename?charset=utf8') 127 engine = create_engine('mysql+pymysql://root:1024@localhost:3306/test') 128 hsdata.to_sql('hs5',con=engine,if_exists='replace') 129 zxbdata.to_sql('zxb',con=engine,if_exists='replace') 130 cybdata.to_sql('cyb',con=engine,if_exists='replace') 131 132 db.close() #用完close好习惯
REF:
网站给的函数喜欢都试试(感觉在打广告,老铁账号权限升一升啊喂),链接:传送门
转载于:https://www.cnblogs.com/amoor/p/9470481.html
JQData数据提取及MySQL简单操作——基于Python相关推荐
- python alter table_python(pymysql)之mysql简单操作
一.mysql简单介绍 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库 ...
- python爬虫开发数据库设计入门经典_Python3实现的爬虫爬取数据并存入mysql数据库操作示例...
本文实例讲述了Python3实现的爬虫爬取数据并存入mysql数据库操作.分享给大家供大家参考,具体如下: 爬一个电脑客户端的订单.罗总推荐,抓包工具用的是HttpAnalyzerStdV7,与chr ...
- 仙剑人物MMD制作详细教程,包含模型提取和3DMAX简单操作
[仙剑人物MMD制作详细教程,包含模型提取和3DMAX简单操作]_夏侯瑾轩吧_百度贴吧
- 用python建云盘_实用的Python(3)超简单!基于Python搭建个人“云盘”
1 简介 当我们想要从本地向云服务器上传文件时,比较常用的有pscp等工具,但避免不了每次上传都要写若干重复的代码,而笔者最近发现的一个基于Python的工具updog,可以帮助我们在服务器上搭建类似 ...
- python云盘搭建教程_超简单!基于Python搭建个人“云盘”,目前最好用的个人云盘...
超简单!基于Python搭建个人"云盘",目前最好用的个人云盘 1. 简介 当我们想要从本地向云服务器上传文件时,比较常用的有pscp等工具,但避免不了每次上传都要写若干重复的代码 ...
- 一个简单的基于python图书管理系统
一个简单的基于python图书管理系统 开发平台:pycharm 开发语言:python 数据库:mysql 登录界面 主界面 数据库文件 想要的联系丘丘:793064854.2R带走
- python性能测试可视化_locust安装及其简单使用----基于python的性能测试工具
1.已安装python3.6 ,安装步骤略 pip安装: pip install locust 检查locust是否安装成功 locust --help 2.安装 pyzmq If you inten ...
- python爬取新闻并归数据库_Python爬取数据并写入MySQL数据库操作示例
Python爬取数据并写入MySQL数据库的实例 首先我们来爬取 http://html-color-codes.info/color-names/ 的一些数据. 按 F12 或 ctrl+u 审查元 ...
- 02_clickhouse安装,卸载,启动/关闭服务,交互式命令(数据库创建,数据导入,查询),批模式数据导入,MySQL接口操作ClickHouse,DBeaver可视化工具安装与使用(学习笔记)
1 ClickHouse安装 安装文件清单 clickhouse-client-${version}.noarch.rpm clickhouse-common-static-dbg-${version ...
最新文章
- POJ - 2513 Colored Sticks 欧拉通路+并查集+静态树
- Recover Binary Search Tree
- 使用计算机的缺点英文作文,网络与计算机的好处与坏处英文作文
- mysql全局权限账户%登录不上ERROR 1045 (28000): Access denied for user #39;mhz#39;@#39;localhost#39; (using ...
- PortSentry
- Linux疑难杂症解决方案100篇(三)-嵌套循环及随机数知多少
- Spring的@Scope的几种取值
- java 并行_Java 中不同的并行实现的性能比较
- 测量软件应用系统的聚合复杂度【翻译稿】
- mysql判断后执行查询语句吗_如何看mysql执行的sql语句
- 记忆训练 0-100的110个数字对应编码
- oracle同义词6,oracle 同义词,oracle同义词是什么意思?
- 国产三极管与进口三极管的区别有哪些
- 2023届计算机保研面试基础专业问题(数据结构、算法、计算机语言、计算机网络、数据库、操作系统、数学)
- 一个简单的考勤签到程序
- 仿163邮箱上传多附件,有点酷
- Android开发者福利之--------Android 6.0 API
- 动漫头像修复高清,提高分辨率、提高清晰度的模型处理
- 安装nginx遇到C compiler cc is not fount问题
- 数据库备份 bak 下载方式,迅雷
热门文章
- 室内定位 - 资料收集
- 【 Grey Hack 】万金油脚本:常见端口获取shell
- Taro+react开发(58) toHtml
- Taro+react开发(28)小程序怎么进行自适应
- 前端学习(3124):react-hello-react之props的简写
- [html] 你有使用过IE的条件注释吗?
- [html] 你知道短链接的生成原理吗?
- [jQuery] jQuery中如何将数组转化为json字符串,然后再转化回来?
- 前端学习(2688):重读vue电商网站9之el-menu 默认会有一个 border-right
- 前端学习(2558):单文件组件