查看: 1158|回复: 3

情话轰炸鸡,改良版,QQ微信可用

[复制链接]
发表于 2020-11-12 15:00 | 显示全部楼层 |阅读模式
非法程序、 2020-11-12 15:00 1158 3 显示全部楼层
原理是通过从网上爬取情话,复制到剪切板,再通过win32py框架获取Windwos系统窗口,微信QQ都可以,然后发送消息,只需要修改不同的类名和窗口名即可

QQ截图20201112145932.jpg QQ截图20201112145942.jpg
  1. import win32api, win32gui, win32con
  2. import win32clipboard as clipboard
  3. import time
  4. import requests
  5. import re
  6. from apscheduler.schedulers.blocking import BlockingScheduler

  7. qhdqs = []   #建一个空列表装网上的情话

  8. def send_m(win):
  9.     # 以下为“CTRL+V”组合键,回车发送,(方法一)
  10.     win32api.keybd_event(17, 0, 0, 0)  # 有效,按下CTRL
  11.     time.sleep(1)  # 需要延时
  12.     win32gui.SendMessage(win, win32con.WM_KEYDOWN, 86, 0)  # V
  13.     win32api.keybd_event(17, 0, win32con.KEYEVENTF_KEYUP, 0)  # 放开CTRL
  14.     time.sleep(1)  # 缓冲时间
  15.     win32gui.SendMessage(win, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)  # 回车发送
  16.     return
  17. def txt_ctrl_v(txt_str):
  18.     # 定义文本信息,将信息缓存入剪贴板
  19.     clipboard.OpenClipboard()
  20.     clipboard.EmptyClipboard()
  21.     print('请注意:')
  22.     clipboard.SetClipboardData(win32con.CF_UNICODETEXT, txt_str)
  23.     clipboard.CloseClipboard()
  24.     return
  25. # def day_english():
  26. #     # 获取金山词霸每日一句
  27. #     url = 'http://open.iciba.com/dsapi'
  28. #     r = requests.get(url)
  29. #     content = r.json()['content']
  30. #     note = r.json()['note']
  31. #     print(content + note)
  32. #     return content + note
  33. def get_window(className, titleName):
  34.     title_name = className  # 单独打开,好友名称
  35.     win = win32gui.FindWindow(className, titleName)
  36.     # 窗体前端显示
  37.     # win32gui.SetForegroundWindow(win)
  38.     # 使窗体最大化
  39.     # win32gui.ShowWindow(win, win32con.SW_MAXIMIZE)
  40.     win = win32gui.FindWindow(className, titleName)
  41.     print("找到句柄:%x" % win)
  42.     if win != 0:
  43.         left, top, right, bottom = win32gui.GetWindowRect(win)
  44.         print(left, top, right, bottom)  # 最小化为负数
  45.         win32gui.SetForegroundWindow(win)  # 获取控制
  46.         time.sleep(0.5)
  47.     else:
  48.         print('请注意:找不到【%s】这个人(或群),请激活窗口!' % title_name)
  49.     return win
  50. #######################发送过程=================
  51. def sendTaskLog():
  52.     # 查找微信小窗口
  53.     # win = get_window('ChatWnd', '文件传输助手')
  54.     # 读取文本
  55.     #file = open(r'F:\tasklog.txt', mode='r', encoding='UTF-8')
  56.     #str = file.read()
  57.     #print(str)
  58.     for i in range(1000,2010):
  59.         #try:
  60.         url = "http://www.ainicr.cn/qh/" + str(i) + ".html"
  61.         #找到一个情话网站,网站规律很简单,从1000开始,每页大概10句,2000页的话是20000句情话
  62.         #应该够听了吧
  63.         response = requests.get(url).text    #用requests.get()函数访问页面并获得信息
  64.         counts = re.findall('<p>(.*?)</p></a>',response)
  65.         #用正则表达式提取信息
  66.         #网站程序员估计忙着谈恋爱去了,太容易抓取和清洗了
  67.         #不过也许是为了帮助广大程序员爬取情话爱哄女朋友
  68.         for count in counts:    #依次获取情话
  69.             qhdqs.append(count)    #把情话添加到情话大全中
  70.         #except:
  71.         #    pass    #出错的话就跳过,两万句情话,少个百十条不重要
  72.     win = get_window('TXGuiFoundation', '好友备注')  #ChatWnd微信  TXGuiFoundation QQ
  73.     for str1 in qhdqs:    #从情话大全中提取情话
  74.         #my_friend.send(qh)    #给女朋友发情话
  75.         print(str1)
  76.         txt_ctrl_v(str1)
  77.         send_m(win)
  78. scheduler = BlockingScheduler()
  79. # scheduler.add_job(sendTaskLog, 'interval', seconds=3)
  80. # scheduler.add_job(sendTaskLog, 'cron',day_of_week='mon-fri', hour=7,minute=31,second='10',misfire_grace_time=30)
  81. scheduler.add_job(sendTaskLog, 'cron', hour='*',  second='*/5')
  82. try:
  83.     # scheduler.start()
  84.     sendTaskLog()
  85. except (KeyboardInterrupt, SystemExit):
  86.     pass
复制代码
现在女朋友已经成功把我拉黑...下次我把频率设低一点应该就没事了
发表于 2020-11-12 18:09 | 显示全部楼层
17716658420 2020-11-12 18:09 显示全部楼层
现在女朋友已经把我拉黑了是重点,圈起来要考

点评

明白了,  详情 回复 发表于 2020-11-13 08:35
回复

使用道具 举报

发表于 2020-11-13 01:40 | 显示全部楼层
z573855744 2020-11-13 01:40 显示全部楼层
搞G上真牛提问下资源!
回复

使用道具 举报

发表于 2020-11-13 08:35 | 显示全部楼层
meidong 2020-11-13 08:35 显示全部楼层
17716658420 发表于 2020-11-12 18:09
现在女朋友已经把我拉黑了是重点,圈起来要考

明白了,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表 发新帖

快速回复 返回顶部 返回列表