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()
作者:贺今宵