原创 使用 Python 获取东方财富网的融资融券历史数据

123 1天前 9

🧰 一、准备工作 在开始之前,请确保你已经安装了以下 Python 库:

pip install requests pandas matplotlib

📦 二、导入库并进行基本设置

import requests
import json
import pandas as pd
import matplotlib.pyplot as plt
import warnings

###### 忽略警告信息
warnings.filterwarnings('ignore')

###### 设置中文字体显示和负号正常显示
plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用黑体显示中文
plt.rcParams['axes.unicode_minus'] = False  # 正常显示负号

🌐 三、接口说明 我们使用的是东方财富网的数据中心接口:

接口地址: https://datacenter-web.eastmoney.com/api/data/v1/get

接口作用: 获取沪深两市融资融券历史汇总数据,包括每日余额、买入、偿还等数据。

🔁 四、编写数据爬取代码

###### 初始化
page = 1
all_data = pd.DataFrame()

###### 只要有数据就一直翻页
while True:
    url = "https://datacenter-web.eastmoney.com/api/data/v1/get"
    params = {
        'reportName': 'RPTA_RZRQ_LSHJ',  # 数据报表名称
        'columns': 'ALL',
        'source': 'WEB',
        'sortColumns': 'dim_date',       # 按交易日期排序
        'sortTypes': '-1',               # 倒序
        'pageNumber': str(page),
        'pageSize': '500',               # 每页最大500条
        'filter': '',
        'pageNo': '2',
        'p': '2',
        'pageNum': str(page),
        '_': '1677571315318'
    }

    # 发起 GET 请求
    response = requests.get(url, params=params, timeout=5)
    response.encoding = response.apparent_encoding  # 自动识别编码

    # 如果返回结果为空,说明到达页面尽头
    if 'null' in response.text:
        prin

本贴含有隐藏内容,付费后可阅(股票量化投资课程学员可免费阅读)

点击下方按钮购买

成为学员
最新回复 ( 0条评论 )


官方微信
码力十足学量化
Powered by Xiuno BBS 4.0.7

官方微信