python 通达信自动下载收盘和财务数据

python 通达信自动下载收盘和财务数据,自动启动通达信,鼠标自动操作:
通达信直接从官网下载免费版,可下载财务数据。
自动识别屏幕尺寸(目前为1440x900、1920x1080、1366*768 三种);
代码 try 下面需替换为自己电脑上通达信的安装目录。

#通达信自动启动下载盘后数据和财务数据
# -*- coding: utf-8 -*-
import subprocess,pyautogui
from time import sleep

pyautogui.PAUSE=1
pyautogui.FAILSAFE=True
k=input('下载完自动关机(默认否,关机_1):')
cc=str(pyautogui.size().width)+'*'+str(pyautogui.size().height)
print(cc)
tdxpt={'buzou':['0免费','1确定','2系统','3盘后数据','4选择日期','5下载','6关闭','7系统','8专业数据','9财务数据','10股票数据','11关闭'],
          '1440*900':[(858,488),(1000,520),(38,10),(90,260),(420,320),(900,626),(1000,626),(38,10),(90,282),(680,600),(1050,600),(1050,646)],
          '1920*1080':[(1100,568),(1200,600),(38,10),(90,242),(703,414),(1120,700),(1200,700),(38,10),(100,263),(930,670),(1240,670),(1244,716)],
          '1366*768':[(820,420),(925,450),(38,10),(85,240),(425,265),(850,548),(928,548),(38,10),(90,260),(664,520),(977,520),(968,564)]}
jc={'buzou':['0下载盘后数据关闭前','1财务数据包前while','2财务数据包前if','3股票数据包前while','4股票数据包前if'],
       '1440*900':[[1005,625,128], [464,600,240],[697,597,128],[832,600,240],[1061,597,128]],
       '1920*1080':[[1205,700,128],[748,674,240],[940,673,128],[1063,674,240],[1253,674,128]],
    '1366*768':[[928,549,128], [471,523,240],[664,522,128],[786,523,240],[976,522,128]]}
try:
    try:
        subprocess.Popen(r'D:\new_tdx\TdxW.exe')  # hp
    except:
        subprocess.Popen(r'E:\Program Files (x86)\new_tdx\TdxW.exe')  # aoc
    
    sleep(3)
    pyautogui.click(tdxpt[cc][0],button='left') #免费
    sleep(0.25)
    pyautogui.click(tdxpt[cc][1]) #确定
    sleep(8)
##下载盘后数据
    pyautogui.click(tdxpt[cc][2]) #系统
    sleep(0.25)
    pyautogui.click(tdxpt[cc][3]) #盘后数据下载
    sleep(0.25)
    pyautogui.click(tdxpt[cc][4]) #选择日期范围
    sleep(0.25)
    pyautogui.click(tdxpt[cc][5]) #开始下载
    sleep(0.25)  # 下面关闭为灰色,等待
    while pyautogui.pixelMatchesColor(jc[cc][0][0],jc[cc][0][1],(jc[cc][0][2],jc[cc][0][2],jc[cc][0][2])): sleep(3)
    pyautogui.click(tdxpt[cc][6]) #关闭
    sleep(0.25)
##下载专业财务数据
    pyautogui.click(tdxpt[cc][7]) #系统
    sleep(0.25)
    pyautogui.click(tdxpt[cc][8]) #专业数据下载
    sleep(8)  #下面没冒号等待,下载为灰色跳出
    while pyautogui.pixelMatchesColor(jc[cc][1][0],jc[cc][1][1],(jc[cc][1][2],jc[cc][1][2],jc[cc][1][2])):
        if pyautogui.pixelMatchesColor(jc[cc][2][0],jc[cc][2][1],(jc[cc][2][2],jc[cc][2][2],jc[cc][2][2])): break
        sleep(3)
    pyautogui.click(tdxpt[cc][9]) #财务数据包
    sleep(0.25)  #下面没冒号等待,下载为灰色跳出
    while pyautogui.pixelMatchesColor(jc[cc][3][0],jc[cc][3][1],(jc[cc][3][2],jc[cc][3][2],jc[cc][3][2])):
        if pyautogui.pixelMatchesColor(jc[cc][4][0],jc[cc][4][1],(jc[cc][4][2],jc[cc][4][2],jc[cc][4][2])):break
        sleep(3)
    pyautogui.click(tdxpt[cc][10]) #股票数据包
    sleep(0.25)
    while pyautogui.pixelMatchesColor(jc[cc][4][0],jc[cc][4][1],(jc[cc][4][2],jc[cc][4][2],jc[cc][4][2])): sleep(3)
    pyautogui.click(tdxpt[cc][11]) #关闭
    print('_____OK_____')
    if k=='1':subprocess.Popen(r'shutdown.exe /s /t 30')  #30秒关机
except:
    print('X 错误:核查 TDX 所在目录')

  • 4
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
通达信是一种广泛使用的股票行情分析软件,它的数据文件格式与常见的数据库格式不同。如果我们想要将通达信数据文件转换成数据库,可以借助Python编程语言来实现。 首先,我们需要使用Python中的文件读取功能,读取通达信数据文件的内容。通达信数据文件通常是二进制格式,有着特定的数据结构和编码方式。我们需要解析这些文件,提取出其中的关键信息,例如股票代码、交易日期、开盘价、收盘价等。 其次,我们可以使用Python中的数据库库,例如SQLite或MySQLdb,连接到我们预先创建好的数据库。通过Python数据库库提供的API,我们可以创建表格和字段,以及插入数据数据库中。根据我们之前从通达信数据文件中提取的信息,我们可以逐条将数据插入到数据库中对应的表格中。 最后,我们可以通过Python来进行数据的查询与分析。通过数据库库提供的查询功能,我们可以执行SQL语句,从数据库中读取特定的数据。此时,我们可以利用Python数据分析库(例如pandas)来进一步处理和分析数据,例如计算股票的均线、市盈率等指标,生成报表或图表等。 总结而言,要将通达信数据文件转换成数据库,可以使用Python编程语言来实现。我们可以通过解析通达信数据文件,提取关键信息,并将这些数据插入到数据库中。最后,我们可以利用Python数据分析功能对数据库中的数据进行查询和分析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值