长话短说
孤寡,我们看似很坚强,每天嘻嘻哈哈,装作一副玩世不恭的样子,但是我们也需要关怀和感动呀
前提准备
import win32gui import win32con import win32clipboard
没有下载win32的宝,可以使用
pip install pywin32
如果不行的话,我们再去
选择我们的对应的版本就可以了
原理:
我们使用的python的win32的第三方库,这样一来就可以利用页面捕获来,来确定聊天框的位置,然后再利用代码操作复制,输入对话消息,最后再利用代码来按下(Enter)发送,思路清晰!!!
代码
在测试代码的时候,记得打开聊天框喔!
import win32gui import win32con import win32clipboard as w msg="早上好呀,小唐同学"#我们要发送的信息 name = "睿睿"#发送人的网名 w.OpenClipboard() w.EmptyClipboard() w.SetClipboardData(win32con.CF_UNICODETEXT, msg)#将消息放进剪切板 w.CloseClipboard() handle = win32gui.FindWindow(None, name)#找到我们的窗口 #在这里加一个while True:【手动狗头】就看你们自己怎么想的啦 #发送一条消息 win32gui.SendMessage(handle, 770, 0, 0) win32gui.SendMessage(handle, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)
推进
消息太单一,没有情感,都知道会发什么内容了,时间怎么确定,是不是还有这样的一些疑问呢,来看看下面这一个代码吧
使用了my sql来存储我们的早安晚安,同时一个time来判断我们的条件,之后我们可以直接在电脑设置,几点打开这一个程序,我们就可以实现自动化了
import win32gui import win32con import win32clipboard as w import mysql.connector as sql import pandas as pd import time #连接数据库 conn = sql.connect(user='root',password='123456',host='localhost',port='3306',use_unicode=True) c = conn.cursor() c.execute('use test') #时间判断 ISOTIMEFORMAT='%X' temp=time.strftime( ISOTIMEFORMAT, time.localtime()) print(temp) if temp[0]=='0' and temp[1]<='9': zaoan="Select 早安 From 早安 Order By rand() Limit 1;" msg=pd.read_sql(zaoan, conn) else: wanan="Select 晚安 From 晚安 Order By rand() Limit 1;" msg=pd.read_sql(wanan, conn) msg=str(msg) msg=msg.replace(' ', '').replace('\n', '').replace('\r', '').replace('0',',') name = "黄海蓉妹妹" w.OpenClipboard() w.EmptyClipboard() w.SetClipboardData(win32con.CF_UNICODETEXT, msg)#将消息放进剪切板 w.CloseClipboard() handle = win32gui.FindWindow(None, name) if 1 == 1: #填充消息 win32gui.SendMessage(handle, 770, 0, 0) #模拟回车 win32gui.SendMessage(handle, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0) c.close() conn.close()
不足
因为我们是直接用的窗口捕获,所以说,如果我们没有找到这一个窗口,这样子的话,我们就不可以发送消息了,所以在实用程序时,记得把聊天框打开