中证指数有限公司所开发的指数中的一种,其样本空间内股票是由全部A股中剔除沪深300指数成份股及总市值排名前300名的股票后,总市值排名靠前的500只股票组成,综合反映中国A股市场中一批中小市值公司的股票价格表现。
首先你需要安装BaoStock,参见往期教程:
如何使用Python安装BaoStock?
然后复制以下代码:
import baostock as bsimport pandas as pd# 登陆系统lg = bs.login()# 显示登陆返回信息print('login respond error_code:'+lg.error_code)print('login respond error_msg:'+lg.error_msg)# 获取中证500成分股rs = bs.query_zz500_stocks()print('query_zz500 error_code:'+rs.error_code)print('query_zz500 error_msg:'+rs.error_msg)# 打印结果集zz500_stocks = []while (rs.error_code == '0') & rs.next(): # 获取一条记录,将记录合并在一起 zz500_stocks.append(rs.get_row_data())result = pd.DataFrame(zz500_stocks, columns=rs.fields)# 结果集输出到csv文件result.to_csv("C:/Py/zz500_stocks.csv", encoding="gbk", index=False)print(result)# 登出系统bs.logout()
新建一个文件,命名为ZZ500.py,并将上述代码粘贴到你的文件中。
修改代码中的红色部分为你需要的输出路径:
打开命令提示行,输入python C:\PY\ZZ500.py:
输入回车运行脚本,得到如下结果,说明拉取是成功,否则请检查程序的安装问题,以及网络:
另外在指定目录中生成了CSV的文件,这个文件很容易被Python,Matlab和各种程序解析:
返回数据说明
参数名称 | 参数描述 |
updateDate | 更新日期 |
code | 证券代码 |
code_name | 证券名称 |