要实现qq自动发情话给女朋友需要两个条件。
第一,要有情话语料,这个要通过爬虫实现。
第二,要实现qq发消息的自动化,这个要靠pywin32这个库实现。
接下来我们来看具体的代码:
import requests,re
# requests是用来爬取需要的语料的,re是用来分析语料的
def getinfo(url):
req = requests.get(url)
if req.encoding == 'ISO-8859-1': # 这个模块是用来解决爬取下来的中文语料编码问题的
encodings = requests.utils.get_encodings_from_content(req.text)
if encodings:
encoding = encodings[0]
else:
encoding = req.apparent_encoding
global encode_content
encode_content = req.content.decode(encoding, 'replace')
pattern = re.compile('<p>\d*.(.*?)</p>',re.S)
result = re.findall(pattern,encode_content)
return result
result = getinfo('http://www.1juzi.com/new/150542.html')
wenben = []
for index,i in enumerate(result):
if index == 53:
result.pop(53)
continue
i = re.sub('<u>.*?/u>','',i)
wenben.append(i)
print(i)
import win32gui
import win32con
import win32clipboard as w
import time
def send(name, msg):
#打开剪贴板
w.OpenClipboard()
#清空剪贴板
w.EmptyClipboard()
#设置剪贴板内容
w.SetClipboardData(win32con.CF_UNICODETEXT, msg)
#获取剪贴板内容
date = w.GetClipboardData()
#关闭剪贴板
w.CloseClipboard()
#获取qq窗口句柄
handle = win32gui.FindWindow(None, name)
if handle == 0:
print('未找到窗口!')
#显示窗口
win32gui.ShowWindow(handle,win32con.SW_SHOW)
#把剪切板内容粘贴到qq窗口
win32gui.SendMessage(handle, win32con.WM_PASTE, 0, 0)
#按下后松开回车键,发送消息
win32gui.SendMessage(handle, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)
win32gui.SendMessage(handle, win32con.WM_KEYUP, win32con.VK_RETURN, 0)
time.sleep(2)#延缓进程
def main():
name = '某某'#QQ聊天窗口的名字
print('开始')
for i in range(len(wenben)):
# send(name, '第'+str(i)+'次测试')
time.sleep(5)
send(name,wenben[i])
print(wenben[i])
print('结束')
main()