搜索
bottom↓
回复: 18

发一个用Phtyon实现的微信群自动回复“收到”的例子

[复制链接]

出0入0汤圆

发表于 2020-4-13 15:08:21 | 显示全部楼层 |阅读模式
本帖最后由 dwj0 于 2020-4-13 15:35 编辑

因工作需要, 需要在好几个微信群中当有人@我们公司的几个人时,需要在半分钟回复收到,靠人工回复经常超时。因此用Phtyon的itchat库,实现了自动回复。为了模拟人工回复,加入了延时一段随机时间再回复的功能。先上代码:
  1. import itchat
  2. import time
  3. import random
  4. import requests

  5. #使用聊天机器人回复
  6. def get_response(msg):
  7.     apiUrl = 'http://www.tuling123.com/openapi/api'   #改成你自己的图灵机器人的api
  8.     data={
  9.         'key': '481b7a6e08d844628bc7fc9bb8f8c401',  # Tuling Key ,使用你自己的KEY
  10.         'info': msg,  # 这是我们发出去的消息
  11.         'userid': 'wechat-robot',  # 这里可随意修改
  12.     }
  13.     # 通过如下命令发送一个post请求
  14.     r = requests.post(apiUrl, data=data).json()
  15.     return r.get('text')

  16. #用于接收群里面的对话消息
  17. @itchat.msg_register([itchat.content.TEXT], isGroupChat=True)
  18. def group_reply(msg):
  19.     #信息内容   
  20.     message = msg['Text']
  21.     # 消息来自于哪个群聊
  22.     chatroom_id = msg['FromUserName']

  23.     # @需要的人
  24.     if u'@张三' in message or u'@李四' in message or u'@王五' in message:
  25.         # 消息并不是来自于需要同步的群
  26.         if not chatroom_id in chatroom_ids:
  27.             print(msg['ActualNickName']+':'+message+' [此群不需要回复]')
  28.             return
  29.         ts=random.randint(5,10)
  30.         print(msg['ActualNickName']+':'+message+' ['+str(ts)+'秒后发出]')
  31.         time.sleep(ts)
  32.         return '收到, @'+msg['ActualNickName']+'。'


  33. # 扫二维码登录
  34. itchat.auto_login(hotReload=True)
  35. # 获取所需的群聊ID
  36. # 需要在微信中将需要同步的群聊都保存至通讯录
  37. Needchatrooms = ['采购群','售后群']
  38. chatrooms = itchat.get_chatrooms(update=True, contactOnly=True)
  39. chatroom_ids=[]
  40. for c in chatrooms:
  41.     if c['NickName'] in Needchatrooms:
  42.         print(c['NickName']+':'+c['UserName'])
  43.         chatroom_ids.append(c['UserName'])
  44. print ('正在监测的群聊:', len(chatroom_ids), '个')
  45. print (' \n'.join([item for item in chatroom_ids]))
  46. # 开始监测
  47. itchat.run()
复制代码


----------------------------小白教程-----------------------------
1. 下载Phtyon3, 并安装。 我用的是3.8.2版本
2. 将C:\Users\Administrator\AppData\Local\Programs\Python\Python38\;C:\Users\Administrator\AppData\Local\Programs\Python\Python38\Scripts加入环镜变量的PATH中
3. 安装itchat库,运行命令:pip install itchat
4. 将以上代码保存为 ".py"文件,右键这个文件-IDLE打开,安F5运行。
5. 扫描二维码登录,开启自动回复

---------------------------------说明------------------------------
1. 登录后相当于登录网页版微信,电脑客户端将自动退出,同时可能需要手机微信一直在线
2. 当前只能回复群消息,如果要回复个人消息,设isGroupChat=False。也可以再注册一条消息:@itchat.msg_register([itchat.content.TEXT])
3. 可以用机器人自动回复,在消息中返回 get_response(message) 即可,也可以根据关键词自定义回复内容。
4. 其实我也不会Phtyon, 这个代码崩溃过一次,找不到原因,希望有高手能改进。:(
5. 听说152手机号码不能在这个论坛实名,可能是近期的最后一贴了。:(

以下是测试效果图:


参考文档:
https://cloud.tencent.com/developer/article/1477297
https://woj.app/4931.html

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2020-4-13 15:31:47 来自手机 | 显示全部楼层
听说这种操作可能会被封号,一直不敢用自己的号试水

出0入58汤圆

发表于 2020-4-13 15:48:00 | 显示全部楼层
半分钟需要响应,去撒泡尿都不止半分钟啊。你们公司当所有人都是机器人么。

出0入0汤圆

发表于 2020-4-13 16:17:48 | 显示全部楼层
sha啥公司 这么无脑的要求

出0入0汤圆

发表于 2020-4-13 17:12:39 | 显示全部楼层
宁愿超时也不用外挂

出0入0汤圆

发表于 2020-4-13 18:14:35 | 显示全部楼层
做客服吗?如果不是客服要求半分种内回复,问题是我遇到的客服好像也没有30秒必回
那肯定要时刻盯着,打字还要快

出0入0汤圆

发表于 2020-4-13 18:20:45 | 显示全部楼层
之前用qq的python包玩了几次,封号了。

出0入0汤圆

发表于 2020-4-13 18:37:49 | 显示全部楼层
huangjiyue 发表于 2020-4-13 18:20
之前用qq的python包玩了几次,封号了。

为啥封号?既然给开发库还不让用?

出0入0汤圆

发表于 2020-4-13 18:43:01 | 显示全部楼层
nanfang2000 发表于 2020-4-13 18:37
为啥封号?既然给开发库还不让用?


想多了,那个python包不是官方出的。github上的,谨慎使用,包括楼主位的这个itchat

出0入0汤圆

发表于 2020-4-13 18:47:03 | 显示全部楼层
nanfang2000 发表于 2020-4-13 18:37
为啥封号?既然给开发库还不让用?

这是个人自己做的库,腾讯严格查处的,目前新的微信号都禁止登录了,老的微信号可以使用,但是检测到就封号。

出200入0汤圆

发表于 2020-4-13 21:36:04 | 显示全部楼层
itchat还能用?

出0入0汤圆

发表于 2020-4-13 22:15:15 | 显示全部楼层
测试之前,先跟微信借1000块钱,以防封号。

出0入0汤圆

发表于 2020-4-13 22:21:35 | 显示全部楼层
不能用

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2020-4-14 09:39:30 | 显示全部楼层
shawn_bu 发表于 2020-4-13 15:48
半分钟需要响应,去撒泡尿都不止半分钟啊。你们公司当所有人都是机器人么。 ...

它们公司全部是属数码管的,动态扫描

出20入128汤圆

发表于 2020-4-14 09:42:52 | 显示全部楼层
Name_006 发表于 2020-4-13 16:17
sha啥公司 这么无脑的要求

钱如果很到位,我觉得可以我做到10s内响应,哈哈

出0入0汤圆

发表于 2020-4-14 09:46:30 | 显示全部楼层
itchat 前年用过, 1个月后那个号就不让登网页版微信了. 还好不是自己的号.

出0入0汤圆

发表于 2020-4-14 15:58:10 | 显示全部楼层
下一步是不是要开发机器人自动聊天处理问题了

出0入0汤圆

 楼主| 发表于 2020-4-15 09:04:09 | 显示全部楼层

新注册的号不能用, 原来是真的。。。。

出0入0汤圆

发表于 2020-4-15 09:34:54 来自手机 | 显示全部楼层
微信号已经不能网页登录了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 23:07

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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