说起数据分析,我们想到的往往是各种算法、思路,图表等等,但是正所谓巧妇难为无米之炊,没有数据,何谈分析。
所以今天就来分享一个获取数据的方法,只需要三行代码就能搞定!
轮子介绍
这是一个主打财经数据的 Python 库,完全由 Python 编写,目前大概提供了上百种数据的获取接口。
GitHub 地址:https://github.com/jindaxiang/akshare
使用文档:https://www.akshare.xyz/zh_CN/latest/introduction.html
pip install akshare --upgrade
我们再来看看它的数据字典,不仅包括超级全的财经数据,还包括学术、电影、能源,事件等各种数据
数据介绍
下面我们就来看看数据如何获取吧
01 A股上海交易所
import akshare as ak stock_sse_summary_df = ak.stock_sse_summary() print(stock_sse_summary_df)
数据结果
type item number 0 总貌 上市公司/家 1638 1 总貌 总股本/亿股 41496.51 2 总貌 总市值/亿元 366954.33 3 总貌 平均市盈率/倍 13.74 0 总貌 上市股票/只 1681 1 总貌 流通股本/亿股 36147.69 2 总貌 流通市值/亿元 302693.06 0 主板 上市公司/家 1526 1 主板 总股本/亿股 41119.88 2 主板 总市值/亿元 348962.46 3 主板 平均市盈率/倍 13.20 0 主板 上市股票/只 1569 1 主板 流通股本/亿股 36088.29 2 主板 流通市值/亿元 299784.63 0 科创板 上市公司/家 112 1 科创板 总股本/亿股 376.63 2 科创板 总市值/亿元 17991.87 3 科创板 平均市盈率/倍 82.72 0 科创板 上市股票/只 112 1 科创板 流通股本/亿股 59.40 2 科创板 流通市值/亿元 2908.43
02 A股深圳交易所
import akshare as ak stock_szse_summary_df = ak.stock_szse_summary(date="20200619") print(stock_szse_summary_df)
数据结果
证券类别 数量(只) ... 流通股本 流通市值 0 股票 2284 ... 1815555842156 21045462688142.41 1 主板A股 460 ... 715360951728 6943989894131.95 2 主板B股 46 ... 12496639543 47063848276.06 3 中小板 960 ... 751639655163 8669554702599.64 4 创业板 818 ... 336058595722 5384854243134.76 5 基金 551 ... 178495219217 241727724562.97 6 ETF 100 ... 97160183202 162829410392.12 7 LOF 250 ... 41299172130 40431564774.31 8 封闭式基金 1 ... 811761500 762244048.50 9 分级基金 200 ... 39224102385 37704505348.03 10 债券 7175 ... 11 债券现券 6600 ... 1773035501300 1823573039491.96 12 债券回购 13 ... 13 ABS 562 ... 488157240326 484463227241.83 14 期权 108 ...
03 实时行情
import akshare as ak stock_zh_a_spot_df = ak.stock_zh_a_spot() print(stock_zh_a_spot_df)
数据结果
symbol code name trade pricechange changepercent buy \ 0 sh600000 600000 浦发银行 12.920 -0.030 -0.232 12.920 1 sh600004 600004 白云机场 18.110 -0.370 -2.002 18.110 2 sh600006 600006 东风汽车 4.410 -0.030 -0.676 4.410 3 sh600007 600007 中国国贸 17.240 -0.360 -2.045 17.240 4 sh600008 600008 首创股份 3.320 -0.030 -0.896 3.310 ... ... ... ... ... ... ... 3755 sh600096 600096 云天化 5.270 -0.220 -4.007 5.270 3756 sh600097 600097 开创国际 10.180 -0.120 -1.165 10.180 3757 sh600098 600098 广州发展 6.550 -0.040 -0.607 6.540 3758 sh600099 600099 林海股份 6.540 -0.150 -2.242 6.540 3759 sh600100 600100 同方股份 8.200 -0.100 -1.205 8.200 sell settlement open high low volume amount \ 0 12.930 12.950 12.950 13.100 12.860 46023920 597016896 1 18.120 18.480 18.510 18.510 17.880 24175071 437419344 2 4.420 4.440 4.490 4.490 4.410 4304900 19130233 3 17.280 17.600 17.670 17.670 17.220 684801 11879731 4 3.320 3.350 3.360 3.360 3.300 8284294 27579688 ... ... ... ... ... ... ... 3755 5.280 5.490 5.490 5.500 5.220 16964636 90595172 3756 10.190 10.300 10.220 10.340 10.090 1001676 10231669 3757 6.550 6.590 6.560 6.620 6.500 1996449 13098901 3758 6.580 6.690 6.650 6.680 6.530 1866180 12314997 3759 8.210 8.300 8.300 8.310 8.120 12087236 99281447 ticktime per pb mktcap nmc turnoverratio 0 15:00:00 6.984 0.790 3.792289e+07 3.631006e+07 0.16376 1 15:00:07 32.927 2.365 3.747539e+06 3.747539e+06 1.16826 2 15:00:02 15.926 1.207 8.820000e+05 8.820000e+05 0.21525 3 15:00:02 22.390 2.367 1.736555e+06 1.736555e+06 0.06798 4 15:00:07 22.912 1.730 1.887569e+06 1.600444e+06 0.17185 ... ... ... ... ... ... 3755 15:00:00 56.728 1.566 7.523847e+05 6.963668e+05 1.28386 3756 15:00:00 17.552 1.434 2.452734e+05 2.303459e+05 0.44268 3757 15:00:00 25.476 1.059 1.785659e+06 1.785659e+06 0.07323 3758 15:00:00 540.496 3.023 1.433045e+05 1.433045e+05 0.85167 3759 15:00:07 -6.264 1.465 2.430397e+06 2.430397e+06 0.40782
04 历史行情数据
import akshare as ak stock_zh_a_daily_qfq_df = ak.stock_zh_a_daily(symbol="sz000002", start_date="20101103", end_date="20201116", adjust="qfq") print(stock_zh_a_daily_qfq_df)
数据结果
open high low ... volume outstanding_share turnover date ... 2010-11-03 6.98 7.20 6.90 ... 146025616.0 9.656080e+09 0.015123 2010-11-04 7.13 7.22 7.04 ... 104870112.0 9.656080e+09 0.010861 2010-11-05 7.22 7.28 7.04 ... 130233640.0 9.656080e+09 0.013487 2010-11-08 7.12 7.34 7.12 ... 162830704.0 9.656080e+09 0.016863 2010-11-09 7.17 7.23 6.88 ... 188507360.0 9.656080e+09 0.019522 ... ... ... ... ... ... ... 2020-11-10 29.70 30.11 29.20 ... 61377060.0 9.714315e+09 0.006318 2020-11-11 29.37 30.25 29.25 ... 88521186.0 9.714315e+09 0.009112 2020-11-12 29.76 29.81 29.38 ... 45905719.0 9.714315e+09 0.004726 2020-11-13 29.56 29.69 28.83 ... 66013466.0 9.714315e+09 0.006795 2020-11-16 29.39 29.50 29.00 ... 51657638.0 9.714315e+09 0.005318
05 期货-交易日历表
import akshare as ak futures_rule_df = ak.futures_rule(trade_date="20200713") print(futures_rule_df)
数据结果
交易所 品种 ... 限价单每笔最大下单手数 特殊合约参数调整 0 上期所 铜 ... 500 CU2007合约交易保证金比例为25.0% 1 上期所 铜期权 ... 100 期权卖方交易保证金中涉及标的期货合约的公司交易保证金按照对应的期货合约保证金标准收取 2 上期所 铝 ... 500 AL2007合约交易保证金比例为25.0% 3 上期所 锌 ... 500 ZN2007合约交易保证金比例为25.0% 4 上期所 铅 ... 500 PB2007合约交易保证金比例为25.0% .. ... ... ... ... ... 78 中金所 上证50股指期货 ... 20 NaN 79 中金所 中证500股指期货 ... 20 NaN 80 中金所 2年期国债 ... 50 NaN 81 中金所 5年期国债 ... 50 NaN 82 中金所 10年期国债 ... 50 NaN
06 外汇比例
import akshare as ak fx_df = ak.fx_spot_quote() print(fx_df)
数据结果
ccyPair bidPrc askPrc midprice time 0 USD/CNY 7.0810 7.0824 --- 1 EUR/CNY 7.8878 7.8903 --- 2 100JPY/CNY 6.5252 6.5275 --- 3 HKD/CNY 0.90293 0.90316 --- 4 GBP/CNY 9.1140 9.1181 --- 5 AUD/CNY 4.8472 4.8491 --- 6 NZD/CNY 4.5151 4.5172 --- 7 SGD/CNY 5.1878 5.1897 --- 8 CHF/CNY 7.1810 7.1838 --- 9 CAD/CNY 5.3911 5.3929 --- 10 CNY/MYR 0.58726 0.59527 --- 11 CNY/RUB 9.0363 9.0489 --- 12 CNY/ZAR 2.0883 2.0923 --- 13 CNY/KRW 166.55 166.89 --- 14 CNY/AED 0.51850 0.51886 --- 15 CNY/SAR 0.52949 0.52979 --- 16 CNY/HUF 41.8886 41.9805 --- 17 CNY/PLN 0.54270 0.54331 --- 18 CNY/DKK 0.9468 0.9473 --- 19 CNY/SEK 1.3660 1.3667 --- 20 CNY/NOK 1.2964 1.2971 --- 21 CNY/TRY 0.81723 0.81918 --- 22 CNY/MXN 2.7016 2.7041 --- 23 CNY/THB 4.2753 4.2791 ---
07 外币历史数据
import akshare as ak currency_hist_df = ak.currency_hist(symbol="usd-jpy", start_date="20050101", end_date="20200117") print(currency_hist_df)
数据结果
收盘 开盘 高 低 涨跌幅 日期 2020-01-17 110.16 110.14 110.30 110.05 0.00% 2020-01-16 110.16 109.89 110.19 109.86 0.25% 2020-01-15 109.89 110.00 110.03 109.78 -0.08% 2020-01-14 109.98 109.94 110.22 109.86 0.04% 2020-01-13 109.94 109.49 109.95 109.45 0.43% ... ... ... ... ... 2005-01-07 104.80 104.97 105.17 103.83 -0.26% 2005-01-06 105.07 104.12 105.20 103.85 0.94% 2005-01-05 104.09 104.56 105.03 103.73 -0.50% 2005-01-04 104.61 102.77 104.81 102.41 1.84% 2005-01-03 102.72 102.69 103.47 102.33 0.24%
财经数据还有很多非常专业的数据,这里就不一一介绍了
再来看看其他非财经数据
08 标普500和常用经济指标
import akshare as ak agoyal_stock_return_df = ak.agoyal_stock_return(indicator="monthly") print(agoyal_stock_return_df.columns)
数据结果
yyyymm Index D12 E12 ... svar csp CRSP_SPvw CRSP_SPvwx 0 187101 4.44 0.260000 0.40 ... NaN NaN NaN NaN 1 187102 4.50 0.260000 0.40 ... NaN NaN NaN NaN 2 187103 4.61 0.260000 0.40 ... NaN NaN NaN NaN 3 187104 4.74 0.260000 0.40 ... NaN NaN NaN NaN 4 187105 4.86 0.260000 0.40 ... NaN NaN NaN NaN ... ... ... ... ... ... ... ... ... 1771 201808 2901.52 52.338996 130.39 ... 0.000471 NaN 0.032938 0.030647 1772 201809 2913.98 52.338996 130.39 ... 0.000230 NaN 0.005138 0.003758 1773 201810 2711.74 53.748178 132.39 ... 0.004578 NaN -0.068409 -0.069492 1774 201811 2760.17 53.748178 132.39 ... 0.002838 NaN 0.019980 0.017477 1775 201812 2506.85 53.748178 132.39 ... 0.006793 NaN -0.090928 -0.092457
09 新闻联播文字稿
import akshare as ak news_cctv_df = ak.news_cctv(date="20180902") print(news_cctv_df)
数据结果
date ... content 0 20180901 ... 涉及违规,可以自行查看哈...
10 日出日落时间
import akshare as ak sunrise_daily_df = ak.sunrise_daily(date="20190801", city="北京") print(sunrise_daily_df)
数据结果
八月 Sunrise Sunset ... End.2 Time Mil. km 2019-08-01 1 05:12 ↑ (65°) 19:28 ↑ (295°) ... 19:58 12:20 (68,2°) 151857
11 胡润排行榜
import akshare as ak hurun_rank_df = ak.hurun_rank(indicator="百富榜", year="2019") print(hurun_rank_df)
数据结果
排名 姓名 财富 出生日期 关联企业 主营行业 0 1 马云家族 2750 1964 阿里系 电子商务、金融科技 1 2 马化腾 2600 1971 腾讯 互联网服务 2 3 许家印 2100 1958 恒大 房地产、投资 3 4 何享健、何剑锋父子 1800 1942、1967 美的 家电制造、房地产 4 5 孙飘扬、钟慧娟夫妇 1750 1958、1961 恒瑞制药、翰森制药 医药 ... ... ... ... ... ... 1814 1727 郑安政 20 1963 安正时尚 服装 1815 1727 郑大报 20 1952 华南城 房地产 1816 1727 郑有全 20 1954 河南瑞贝卡 假发制品 1817 1727 郑忠、邱艾夫妇 20 1967、/ 亚泰国际 高端建筑装饰 1818 1727 邹剑寒 20 1969 奥佳华 按摩椅
12 实时票房
import akshare as ak movie_boxoffice_realtime_df = ak.movie_boxoffice_realtime() print(movie_boxoffice_realtime_df)
数据结果
排序 影片名称 实时票房 票房占比 上映天数 累计票房 0 1 我和我的家乡 1538.52 43.15 20 249064.58 1 2 喜宝 495.20 13.89 5 6385.52 2 3 一点就到家 426.22 11.95 17 24281.57 3 4 夺冠 420.24 11.79 26 77728.87 4 5 姜子牙 281.73 7.90 20 153707.79 5 6 急先锋 166.58 4.67 21 27109.02 6 7 七号房的礼物 81.22 2.28 6 1368.64 7 8 八佰 59.04 1.66 61 308789.71 8 9 掬水月在手 32.99 0.93 5 232.62 9 10 秀美人生 18.02 0.51 69 2313.17 10 11 其它 45.53 1.00 0 0.00
怎么样,这个工具的数据是不是有种宝藏男孩的感觉,有兴趣的可以去官方文档详细查看哦