python-qq定时自动消息发送

预设

qq需要可以enter发送消息

发qq表情代码需要开启快捷表情

import sys
import win32gui
import win32con
import win32clipboard as w
import win32api
import time
import subprocess
import datetime
import webbrowser
import tkinter as tk
vb_file_path = "./openQQ.vbs"
def run_vb_script():
    subprocess.run(['cscript', vb_file_path])

# 消息内容
msg = 'ƣ'
qName = 'chn'
uin =''
timeDate = ''
temp=True
#复制操作
def send_msg(name,mes,uin):
    url = "tencent://message/?uin=" + uin
    webbrowser.open(url)
    time.sleep(1)
    # 获取窗口句柄
    handle = win32gui.FindWindow(None, name)
    # 将 QQ 窗口设置为活动窗口
    win32gui.SetForegroundWindow(handle)
    # 将测试消息放到剪贴板
    w.OpenClipboard()
    w.EmptyClipboard()
    print(mes)
    time.sleep(1)
    w.SetClipboardData(win32con.CF_UNICODETEXT, mes)
    w.CloseClipboard()
    # 通过剪贴板填充消息
    win32gui.SendMessage(handle, win32con.WM_PASTE, 0, 0)
    # 模拟按下 Enter 键
    win32api.keybd_event(win32con.VK_RETURN, 0, 0, 0)
    time.sleep(0.1)
    # 模拟释放 Enter 键
    win32api.keybd_event(win32con.VK_RETURN, 0, win32con.KEYEVENTF_KEYUP, 0)
    time.sleep(0.1)
    # 释放 QQ 窗口的焦点
    win32gui.ReleaseCapture()
#执行
def runTime():
        print(778, qName, timeDate)
        global temp
        while temp:
            time_now = datetime.datetime.now().strftime("%Y%m%d%H%M")  # 刷新
            if time_now == timeDate:  # 设置要执行的时间
                send_msg(qName,msg,uin)
                print(77,qName, timeDate)
                temp = False

            else:
                print("等待",timeDate)
                time.sleep(3)
#赋值
def setData(e1,e2,e3,e4):
    global msg
    global qName
    global timeDate
    global uin
    msg = e3
    timeDate = e1
    qName =e2
    uin =e4

  

#弹窗操作
def run_tk():
    # 创建弹窗
    popup = tk.Tk()
    popup.wm_title("输入弹窗")
    #第一个输入框
    label1 = tk.Label(popup, text="输入执行时间:")
    label1.pack()
    e1 = tk.Entry(popup)
    e1.pack()

    # 第二个输入框
    label2 = tk.Label(popup, text="输入窗口名称:")
    label2.pack()
    e2 = tk.Entry(popup)
    e2.pack()
    # 第二个输入框
    label3 = tk.Label(popup, text="输入qq号:")
    label3.pack()
    e3 = tk.Entry(popup)
    e3.pack()
    # 第三个输入框
    label4 = tk.Label(popup, text="输入发送内容:")
    label4.pack()
    e4 = tk.Entry(popup)
    e4.pack()
    def get_input():
            setData(e1.get(), e2.get(), e4.get(), e3.get())
            popup.destroy()  # 关闭弹窗
            runTime()
           

    submit_button = tk.Button(popup, text="提交", command=get_input)  # 创建提交按钮
    submit_button.pack()  # 将按钮放到窗口里
    popup.mainloop()

run_tk()
sys.exit()

Python中实现QQ自动发送消息通常涉及到使用第三方库来连接到腾讯QQ消息服务器并执行操作。一个常见的方法是利用`py.qqbot`库,这是一个针对腾讯QQ机器人开发的小工具,支持群发、私聊等功能。 以下是一个简单的步骤概述: 1. **安装依赖**: 首先,你需要安装`py.qqbot`库。如果你还没有安装,可以通过pip来安装: ``` pip install py.qqbot ``` 2. **设置API**: 获取一个有效的QQ机器人API,这是发送消息的关键。你可以从官方文档获取API,通常需要注册一个账号并创建一个机器人。 3. **初始化机器人**: 使用API初始化QQBot实例: ```python from qqbot import QQBot, FriendMessage bot = QQBot(api_key='your_api_key', secret='your_secret') ``` 4. **编写发送消息的函数**: 定义一个函数来发送私信或群聊信息: ```python def send_message(recipient, message): if isinstance(recipient, str): # 如果是用户名,则发送私聊 friend_msg = FriendMessage(recipient=recipient, content=message) elif isinstance(recipient, list): # 如果是列表,则发送群聊 group_msg = GroupMessage(group_id=recipient[0], content=message) bot.send(friend_msg) or bot.send(group_msg) ``` 5. **调用发送消息函数**: 将你想发送的目标(用户名或群组ID)和消息传递给`send_message`函数: ```python send_message('对方的QQ号码', '你好,这是一条自动发送消息。') ``` 6. **运行机器人**: 最后,启动QQBot以开始监听消息并进行处理: ```python bot.run() ``` 记得替换`'your_api_key'`和`'your_secret'`为实际的API值。同时,请确保遵守腾讯的相关服务条款和隐私政策,尤其是对于自动化工具的使用可能有限制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值