通达信指标预警信号,自动发送给微信好友1.0

news2024/11/23 20:03:26

1.功能介绍:十一节假日期间写了一个,可将股票指标预警信号,自动发送给微信好友/微信群(即电脑端的消息,通过模拟微信操作可在手机上显示)。本工具按通达信写的,如果大智慧,同花顺也能导出记事本txt文件,那么也可以使用这个工具。然后设置一下他对应的编码即可,因为我不确定其他的软件导出后txt,是否也是gbk编码格式。

#小红牛微信公众号:gxzfp888

2 . 下载地址+视频教程:

https://share.weiyun.com/xIfHHqFX

通达信指标预警信号,自动发送给微信好友

3.软件的使用步骤

A. 电脑端需要登入自己的微信,通过消息发送到电脑端,消息同步到手机,实现手机与PC的互通。电脑上没有的话,自己下载一个微信。

在这里插入图片描述
B.设置一下通达信预警文件为txt格式及保存的位置:随便找个指标,生成一个预警的txt文件。

C. 点击初始化配置按钮,生成一个默认的文件,并设置好配置的属性。

微信收件人=我的Python教程

微信路径=D:\Program Files (x86)\Tencent\WeChat\WeChat.exe

预警文件路径=C:\Users\Ms-xiao\Desktop\预警.txt

gbk 或 utf-8编码=gbk
在这里插入图片描述
**D. 点击开启预警信号:**就会监测9-15点这个时间段内,是否出现了股票信号,如果出现就发送消息到微信。第一次使用可以测试一下(先开启tdx预警+登入pc微信+初始化属性设置+最后点开启预警信号),消息是否能正常发送,如果可以重启一下本软件,设置好tdx要预警的指标,重新开启预警即可。开启之后不要动电脑了,以免影响了,正常的模拟微信按键操作。(本来是要点这里的,结果你一动点了别的位置了)

Python源码

import os
import threading
import time
import base64
from axhniu.icon import ico
from axhniu import xhtext
from pywinauto.keyboard import send_keys
import tkinter as tk
# 新建文件夹,初始化
def new_folder():
    os.makedirs('股票预警', exist_ok=True)
    config =r"""微信收件人=我的Python教程
微信路径=D:\Program Files (x86)\Tencent\WeChat\WeChat.exe
预警文件路径=C:\Users\Ms-xiao\Desktop\预警.txt
gbk 或 utf-8编码=gbk
"""
    #判断文件是否存在
    if not os.path.exists('股票预警/配置.txt'):
        xhtext.write_txt('股票预警/配置.txt', config,'utf-8')

    if not os.path.exists('股票预警/预警.txt'):
        xhtext.write_txt('股票预警/预警.txt', '生成一个初始的txt888', 'gbk')

    label.config(text = "初始化文件已生成,请先配置再使用!!")
    time.sleep(10)
    label.config(text = '小红牛微信公众号:gxzfp888')

def new_folder_thread():
    thread1 = threading.Thread(target=new_folder)
    # 设置守护线程,这样在主线程退出时会自动结束这个线程
    thread1.daemon = True
    # 启动线程
    thread1.start()

#模拟微信发送消息给好友/群
def simulate_click(message, addressee):
    # 1.打开微信,设置微信的绝对路径
    #wx_path = r'D:\Program Files (x86)\Tencent\WeChat\WeChat.exe'
    wx_path= xhtext.read_config(r'股票预警\配置.txt', 1, '=')
    os.startfile(wx_path)
    time.sleep(2)

    # 2.进入微信,模拟按键Ctrl+F
    send_keys('^f')
    send_keys(addressee)
    #print(addressee)
    time.sleep(1)
    send_keys('{ENTER}')  # 回车键必须全部大小

    time.sleep(1)
    # 3.输入聊天内容
    # 处理消息格式+空格+换行
    msg_lists = message.replace('  ', '{SPACE}{SPACE}').split('\n')
    msgs = ''
    for msg in msg_lists:
        msgs += msg + '^{ENTER}'
    # print(msgs)
    send_keys(msgs)
    # 回车发送消息
    send_keys('{ENTER}')
    time.sleep(1)
    #exit()  # 退出程序,不退出就死循环轰炸了

def work():
    addressee = xhtext.read_config(r'股票预警\配置.txt', 0, '=')
    # print(addressee)
    label.config(text="正在开启预警...")
    time.sleep(1)
    label.config(text='小红牛微信公众号:gxzfp888')

    local_time = time.localtime()
    hour = int(time.strftime("%H", local_time))
    # 处于开盘时间内
    while hour > 9 and hour <= 15:
        warning_path = xhtext.read_config(r'股票预警\配置.txt', 2, '=')
        # print(code_path)
        encod = xhtext.read_config(r'股票预警\配置.txt', 3, '=')
        f = open(warning_path, 'r', encoding = encod)
        read_msg = f.read()
        # print(read_msg)

        #读股票预警里面的预警文件
        f1 = open(r'股票预警\预警.txt', 'r', encoding = encod)
        write_msg = f1.read()
        f1.close()
        # print(write_msg)
        '''
        两个预警文件内容不等于的时候,发送消息
        消息发送完成了,就重新写一个
        写完后,再循环判断
        '''
        if read_msg != write_msg:
            simulate_click(read_msg, addressee)
            xhtext.write_txt('股票预警\预警.txt', read_msg, encod)
            #print(read_msg != write_msg)

def work_thread():
    thread = threading.Thread(target=work)
    # 设置守护线程,这样在主线程退出时会自动结束这个线程
    thread.daemon = True
    # 启动线程
    thread.start()

if __name__ == '__main__':
    root = tk.Tk()
    set_font = ("楷体", 14)
    root.title('股票预警信号,发送给微信群+好友1.0')
    root.geometry('400x150+350+260')
    root.resizable(0,0)
    # 加载ico图标
    xhnico = open("xhnico.ico", "wb+")
    xhnico.write(base64.b64decode(ico))
    xhnico.close()
    root.iconbitmap('xhnico.ico')
    os.remove("xhnico.ico")

    button1 = tk.Button(root, text = '初始化配置', width=18, height=1,
                       font = set_font,
                       command = new_folder_thread)
    button1.pack(pady=10)

    button2 = tk.Button(root, text='开启预警信号', width=18, height=1,
                       font=set_font,
                       command = work_thread)
    button2.pack(pady=10)

    label = tk.Label(root, text='小红牛微信公众号:gxzfp888', width=80,
                    height=1,font=set_font)
    label.pack(pady=10)
    root.mainloop()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1069410.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Flutter环境搭建及新建项目

一、下载安装压缩包 https://storage.flutter-io.cn/flutter_infra_release/releases/stable/windows/flutter_windows_3.10.6-stable.zip 二、解压缩 解压之后&#xff0c;将里面的flutter整体拿出来 三、配置环境变量 将flutter/bin全路径配置到系统环境变量里面 四、运行…

12.2 实现键盘模拟按键

本节将向读者介绍如何使用键盘鼠标操控模拟技术&#xff0c;键盘鼠标操控模拟技术是一种非常实用的技术&#xff0c;可以自动化执行一些重复性的任务&#xff0c;提高工作效率&#xff0c;在Windows系统下&#xff0c;通过使用各种键盘鼠标控制函数实现动态捕捉和模拟特定功能的…

用vscode进行远程主机开发

文章目录 插件操作步骤FQA 插件 Remote - SSH - 通过使用 SSH 打开远程计算机或者VM上的文件夹&#xff0c;来连接到任何位置。 操作步骤 使用Vscode利用Remote进行远端开发必须现在Vscode内安装插件 安装完成后&#xff0c;底部工具栏会出现一个绿色按钮&#xff0c;如下…

Vue中如何进行图像处理与图像滤镜

在Vue中进行图像处理与图像滤镜 图像处理和滤镜效果是现代Web应用程序中常见的功能之一。Vue.js作为一个流行的JavaScript框架&#xff0c;为实现这些功能提供了许多工具和库。本文将介绍如何使用Vue来进行图像处理与图像滤镜&#xff0c;包括使用HTML5 Canvas和CSS滤镜。 准备…

《有了这些可视化应用,再来一场亚运会也不怕!》

亚运会遇上中秋国庆千万大流量涌入城市&#xff0c;旅游、交通、应急消防等部门指挥中心人员&#xff0c;会如何运筹帷幄呢&#xff1f; 还记得刘涛在《开端》里&#xff0c;每次出场都在指挥中心&#xff0c;看着一堆大屏找线索。在早些年《人民的名义》里&#xff0c;汉东省的…

cap分布式理论

cap 理论 cap是实现分布式系统的思想。 由3个元素组成。 Consistency&#xff08;一致性&#xff09; 在任何对等 server 上读取的数据都是最新版&#xff0c;不会读取出旧数据。比如 zookeeper 集群&#xff0c;从任何一台节点读取出来的数据是一致的。 Availability&…

UG\NX二次开发 重命名特征对象 UF_OBJ_set_name

文章作者:里海 来源网站:《里海NX二次开发3000例专栏》 感谢粉丝订阅 感谢 林闹 订阅本专栏,非常感谢。 简介 UG\NX二次开发 重命名特征 UF_OBJ_set_name 效果 代码 #include "me.hpp" #include <vector> #include

RT-Thread 中断管理(学习一)

中断管理 什么是中断&#xff1f;简单的解释就是系统正在处理某一个正常事件&#xff0c;忽然被另一个需要马上处理的紧急事件打断&#xff0c;系统转而处理这个紧急事件&#xff0c;待处理完毕&#xff0c;再恢复运行刚才被打断的事件。生活中&#xff0c;我们经常会遇到这样…

Ultra-Fast-Lane-Detection-v2 {后处理优化}//参考

采用三次多项式拟合生成的anchor特征点&#xff0c;在给定的polyfit_draw函数中&#xff0c;degree参数代表了拟合多项式的度数。 具体来说&#xff0c;当我们使用np.polyfit函数进行数据点的多项式拟合时&#xff0c;我们需要指定一个度数。这个度数决定了多项式的复杂度。例…

buuctf-[GYCTF2020]Blacklist sql堆叠注入

这题我一开始还以为是rce&#xff0c;但是看到注入框内写了1&#xff0c;那就肯定是sql 提交1 1 报错&#xff0c;更加确定是sql 1 order by 2 -- 说明是两列 1 union select 1,# 发现select被过滤了 这里我想起了之前做的强网杯的随便住&#xff0c;也是被过滤了&#x…

unocss+vite+vue3初使unocss

一、什么是UnoCss&#xff1f; UnoCSS 是一个即时的原子CSS引擎&#xff0c;而非一款框架&#xff0c;因为它并未提供核心工具类&#xff0c;所有功能可以通过预设和内联配置提供。它可以让你用简短的类名来控制元素的样式 原子样式也有很多选择&#xff0c;最著名的就是 Tail…

Sonar代码审查

概念 Sonar 下载地址 是一款功能强大的代码审核工具&#xff0c;可以帮助开发团队更好的维护项目代码。同时&#xff0c;Sonar只是一个统称&#xff0c;这款工具不是单纯一个应用&#xff0c;一般来说我们会使用Sonar Qube和Sonar scanner这两个组件来搭配使用。Sonar Scanner…

面试算法21:删除倒数第k个节点

题目 如果给定一个链表&#xff0c;请问如何删除链表中的倒数第k个节点&#xff1f;假设链表中节点的总数为n&#xff0c;那么1≤k≤n。要求只能遍历链表一次。 例如&#xff0c;输入图4.1&#xff08;a&#xff09;中的链表&#xff0c;删除倒数第2个节点之后的链表如图4.1&a…

LabVIEW应用开发——控件的使用(一)

LabVIEW与其他开发语言相比&#xff0c;最大的优点就是可用控件非常多&#xff0c;涵盖了各种数值、数组、波形、图表、图形等控件&#xff0c;在前面板右键调出控件面板选择。 1、数值型控件 按左上角的图钉&#xff0c;可以使相同控件类别的固定显示&#xff0c;始终处于打开…

模板中的依赖类型使用 --- typename

依赖类型&#xff0c;顾名思义就是依赖于模板参数的类型&#xff0c;在使用这种类型时&#xff0c;必须使用 typename&#xff0c;否则编译器是无法知道是在使用类型&#xff0c;还是类的成员&#xff08;因为类的静态成员的使用方法也是T::xxx&#xff0c;这跟某个类中的类型的…

【EI会议信息】第二届航空航天与控制工程国际学术会议(ICoACE 2023)

2023 2nd International Conference on Aerospace and Control Engineering 第二届航空航天与控制工程国际学术会议(ICoACE 2023) 2023年第二届航空航天与控制工程国际学术会议&#xff08;ICoACE 2023&#xff09;将于2023年12月15-17日在江苏南京召开。ICoACE 2023会议主要…

【虚拟机】NAT 模式下访问外网

目录 一、NAT 模式的作用原理 二、配置 NAT 模式实现外网访问 1、配置NAT模式的网段 2、虚拟机选择 VMnet8 网卡 3、IP地址设为自动分配 一、NAT 模式的作用原理 NAT模式下&#xff0c;虚拟机的系统会把宿主机当作一个大路由器&#xff0c;发送的网络请求和数据都是先发给…

LongLoRA:超长上下文,大语言模型高效微调方法

麻省理工学院和香港中文大学联合发布了LongLoRA&#xff0c;这是一种全新的微调方法&#xff0c;可以增强大语言模型的上下文能力&#xff0c;而无需消耗大量算力资源。 通常&#xff0c;想增加大语言模型的上下文处理能力&#xff0c;需要更多的算力支持。例如&#xff0c;将…

借助PLC-Recorder,汇川中型PLC(AM、AC系列,CODESYS平台)2ms高速采集的方法

高速数据采集要保证速度&#xff0c;也要保证时刻的准确性。在windows系统里&#xff0c;时间稳定性是个很难的问题。如果PLC发送的数据里带有时间信息&#xff0c;则可以由PLC来保证采样周期的稳定性。 从V2.12版本开始&#xff0c;PLC-Recorder软件可以处理发送电文里的时间…

国庆出游远程实测:ToDesk 、TeamViewer、AnyDesk远程控制软件稳定性

ToDesk 、TeamViewer、AnyDesk远程控制软件稳定性 【前言】【实测软件】【测试环境】【实操体验】1. 软件安装2. 登录速度3. 文件传输4. 操作延迟5. 画面清晰度6. 安全防护 【本文小结】 【前言】 随着科技的不断发展&#xff0c;远程控制软件已成为我们生活中不可或缺的一部分…