Python配置同花顺全数据接口教程详解

yizhihongxing

Python配置同花顺全数据接口教程详解

同花顺是国内知名的股票交易软件,其提供了全数据接口(QDII、港股、A股等)供客户端程序调用,但官方并没有提供Python版本的SDK。本文将详细讲解如何使用Python配置同花顺全数据接口,并提供两个示例。

环境准备

在进行配置之前,需要准备好以下环境:

  1. Windows系统(本文以Windows 10为例)
  2. Python 3.x环境
  3. 同花顺客户端软件,并已注册登录

步骤

1. 安装Python第三方库

由于官方没有提供Python版本的SDK,我们需要借助第三方库来调用同花顺全数据接口。以下是需要安装的Python第三方库:

  1. pywinauto:用于自动模拟鼠标键盘输入,从而实现对同花顺客户端进行操作。
  2. comtypes:用于Python与COM组件之间的交互,从而实现对同花顺COM组件的调用。

我们可以在Python命令行输入以下命令来安装这两个库:

pip install pywinauto comtypes

2. 启动同花顺客户端软件

在Windows系统中启动同花顺客户端软件。

3. 查找同花顺客户端COM组件

我们需要知晓同花顺客户端COM组件的ProgID。我们可以通过Windows注册表查找实现该组件的DLL文件,在DLL文件中查找ProgID。

在Windows命令行中输入以下命令,查找同花顺客户端COM组件的DLL文件路径:

reg query HKEY_CLASSES_ROOT\CLSID /f {6D8AD9B5-8200-4E76-AAC0-AE7D21D4F85A} /s

输出结果中应该包含以下内容:

HKEY_CLASSES_ROOT\CLSID\{6D8AD9B5-8200-4E76-AAC0-AE7D21D4F85A}\InProcServer32
    (默认)    REG_SZ    C:\WINDOWS\System32\thsBroker.dll

在DLL文件路径中,我们可以找到该组件的ProgID为:thsBroker.ThsBrokerQuote

4. Python调用同花顺客户端COM组件

将以下代码保存为.py文件,并在终端中运行:

import os
import time
import comtypes.client as cc

def quote(code):
    app = cc.GetActiveObject("thsBroker.ThsBrokerQuote")
    time.sleep(3)
    app.CopyDataToClipboard(code)
    time.sleep(3)
    response = os.popen('wmic process where name="ths.exe" get processid').read().split()[1]
    os.system('taskkill /pid ' + response + ' /f')
    time.sleep(3)
    return cc.GetActiveObject("thsBroker.ThsBrokerQuote")

该函数接受一个股票代码参数并返回该股票实时行情的数据对象。

5. 示例1:获取单个股票的实时行情数据

可以通过以下代码接收单个股票的实时行情:

quote('600519.SH').GetQuotesData()

6. 示例2:获取多个股票的实时行情数据

可以通过以下代码接收多个股票的实时行情:

codes = ['600519.SH', '000651.SZ', '000333.SZ', '601318.SH', '601012.SH']
app = quote(codes[0])
data = [app.GetQuotesData()]
for code in codes[1:]:
    app.CopyDataToClipboard(code)
    time.sleep(1)
    data.append(app.GetQuotesData())

运行以上代码即可获取codes中多个股票的实时行情。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python配置同花顺全数据接口教程详解 - Python技术站

(3)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • python requests更换代理适用于IP频率限制的方法

    以下是关于Python requests更换代理适用于IP频率限制的方法的攻略: Python requests更换代理适用于IP频率限制的方法 在进行网络爬虫开发时,经常会遇到IP频率限制的问题。为了解决这个问题,我们可以使用代理IP来更换IP地址。以下是Python requests更换代理适用于IP频率限制的方法的攻略。 使用代理IP 使用reques…

    python 2023年5月14日
    00
  • Python安装图文教程 Pycharm安装教程

    下面是Python安装和Pycharm安装的详细教程: Python安装教程 1. 下载Python安装包 访问Python官网 http://www.python.org/downloads/ ,选择适合你操作系统的Python安装包下载。一般来说,你应该下载最新的稳定版Python 3.x 版本。 2. 安装Python 双击下载的Python安装包,按…

    python 2023年5月30日
    00
  • python简单几步获取各种DOS命令显示的内容详解流程

    获取DOS命令输出内容是Python程序开发中常见需求,以下是Python简单几步获取各种DOS命令显示的内容的详解流程: 步骤一:导入subprocess模块 Python可以通过subprocess模块来执行操作系统命令,从而实现获取DOS命令输出内容的目的。因此在程序开发之前,需要先导入subprocess模块。 import subprocess 步…

    python 2023年6月2日
    00
  • Python转换HTML到Text纯文本的方法

    Python转换HTML到Text纯文本的方法 在本文中,我们将介绍如何使用Python将HTML转换为纯文本。我们将使用BeautifulSoup库来解析HTML,并使用get_text方法将HTML转换为纯文本。以下是详细的步骤和示例。 步骤1:安装必要的库 在使用Python将HTML转换为纯文本之前,我们需要安装必要的库。以下是安装必要库的步骤: p…

    python 2023年5月15日
    00
  • python使用正则搜索字符串或文件中的浮点数代码实例

    以下是“Python使用正则搜索字符串或文件中的浮点数代码实例”的完整攻略: 一、问题描述 在Python中,我们可以使用正则表达式来搜索字符串或文件中的浮点数。本文将详细讲解如何使用Python正则表达式搜索浮点数,并提供两个示例说明。 二、解决方案 2.1 使用正则表达式搜索浮点数 在Python中,我们可以使用正则表达式来搜索浮点数。以下是一个示例,演…

    python 2023年5月14日
    00
  • 使用pandas将numpy中的数组数据保存到csv文件的方法

    下面是使用pandas将numpy中的数组数据保存到csv文件的完整攻略。 1. 导入pandas和numpy模块 在使用pandas将numpy中的数组数据保存到csv文件前,需要先导入pandas和numpy模块。具体操作如下: import pandas as pd import numpy as np 2. 创建numpy数组数据 为了进行示例说明,…

    python 2023年6月3日
    00
  • python通过TimedRotatingFileHandler按时间切割日志

    TimedRotatingFileHandler是什么? TimedRotatingFileHandler是Python logging模块中的一个子类,用于按照一定时间间隔自动切割日志文件。 TimedRotatingFileHandler的使用方法 TimedRotatingFileHandler可以很方便地创建一个按照时间自动切割的日志文件。使用方法如…

    python 2023年6月2日
    00
  • python面向对象多线程爬虫爬取搜狐页面的实例代码

    Python面向对象多线程爬虫是一种快速、高效地爬取网站信息的方法。到目前为止,已经有很多面向对象多线程爬虫的实现方法,其中就包括使用Python编程语言的方法。本篇攻略将详细介绍Python面向对象多线程爬虫的实现。 一、爬虫的基础知识 爬虫是一种获取互联网信息的技术。它可以通过网络获取互联网上的信息,并从中提取所需的信息。爬虫基础知识指掌握爬虫的原理、流…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部