如何用20行Python代码打造一个微信群聊助手?
今天要教大家一个黑科技,20行代码实现自己定制的微信群聊助手,可以用来活跃群气氛,好多群主创建完群后,拉完一群人,之后就一片寂静,有个群聊助手,就可以帮忙活跃群里气氛,通过今天在自己的微信上有一大批好友的公测,效果还可以。(ps:其实最大胆感受还是,这货比我还会撩妹,撩起妹来一套一套的,晒一波自动撩妹图)




废话不说了,具体操做如下:
1.安装python环境,python2.x或着python3.x都行对此程序无影响
2.mac自带python,只需要安装python的itchat库即可
pip install itchat
3.windows下需要提前安装好python程序,然后安装itchat库即可,安装好python后,打开cmd出现如下所示表示python已经装好
C:\Users\DELL1>python
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>>pip install itchat
4.Linux下没做测试,在此不做赘述。
5.申请图灵机器人API和key(图灵机器人官网:http://www.tuling123.com/)
这个你只要去图灵机器人官网注册一下就可以获取免费的key,当然免费的会有部分限制,不过用于我们测试玩,完全够用.登录后界面如下所示:

6.编写python程序,具体代码如下
import itchat
import requests
def get_response(msg):
apiUrl = 'http://www.tuling123.com/openapi/api' #改成你自己的图灵机器人的api,上图红框中的内容,不过用我的也无所谓,只是每天自动回复的消息条数有限
data = {
'key': '769e14179d3844948f04364d92fbd14b', # Tuling Key
'info': msg, # 这是我们发出去的消息
'userid': 'wechat-robot', # 这里你想改什么都可以
}
# 我们通过如下命令发送一个post请求
r = requests.post(apiUrl, data=data).json()
return r.get('text')
@itchat.msg_register(itchat.content.TEXT)
def print_content(msg):
return get_response(msg['Text'])
@itchat.msg_register([itchat.content.TEXT], isGroupChat=True)
def print_content(msg):
return get_response(msg['Text'])
itchat.auto_login(True)
itchat.run()
7.执行python脚本后,会弹出微信网页版登录二维码,扫描登录网页版微信(或者会提示手机微信授权登录),微信机器人就可以正常使用了,此时别人给你发消息会自动回复,群消息也会自动回复,如果想退出程序,直接Ctrl+C退出程序,即可结束自动回复
python wechat.py #执行python脚本,可自由命名,windows下如图所示

登录成功后如下图所示:

大致原理简介:
用到两个库,一个itchat,一个requests,如果你import itchat 没用出异常,也说明你之前安装itchat库成功啦,requests是网络请求库,python自带的,用于调用图灵机器人API
@itchat.msg_register(itchat.content.TEXT):用于接收来自朋友间的对话消息 #如果不用这个,朋友发的消息便不会自动回复
@itchat.msg_register([itchat.content.TEXT], isGroupChat=True):用于接收群里面的对话消息
实现原理也很简单,接受到信息,调用get_response()方法,把消息传给图灵机器人,然后接收的回复信息再返回给微信,大致是这个原理
最后是登录接口的调用,执行itchat.auto_login(),执行的python代码,会弹出一个登录二维码,类似网页端的扫码登录,你扫码登录后,就会由机器人替你处理朋友以及群里发来的消息啦,当然,如果不希望机器处理,你退出网页端的登录即可
至此,你的微信小助手,就完成了,可以静静的看着它撩妹,讲故事了。如有疑问,可扫描。以下二维码,进入公众号,进行咨询

如何用20行Python代码打造一个微信群聊助手?的更多相关文章
- 40多行python代码开发一个区块链。
40多行python代码开发一个区块链?可信吗?我们将通过Python 2动手开发实现一个迷你区块链来帮你真正理解区块链技术的核心原理.python开发区块链的源代码保存在Github. 尽管有人认为 ...
- 20行Python代码爬取王者荣耀全英雄皮肤
引言王者荣耀大家都玩过吧,没玩过的也应该听说过,作为时下最火的手机MOBA游戏,咳咳,好像跑题了.我们今天的重点是爬取王者荣耀所有英雄的所有皮肤,而且仅仅使用20行Python代码即可完成. 准备工作 ...
- 20行Python代码开发植物识别 app
这篇文章介绍如何用Python快速实现一个植物识别的app,家里养了几盆多肉还叫不上名字,正好拿来识别一下.实现这样一个app只需要20行左右的代码,先来看下效果: 另外,我也开发了微信小程序版本,大 ...
- 20行Python代码检测人脸是否佩戴口罩
最近,口罩成为绝对热门的话题,在疫情之下,出门不戴口罩不仅对自己不负责,对他人而言也是一种潜在的威胁.所以许多小区都有保安在门口守着,谁要是不戴口罩就吼回去(吓死我了). 很多人学习python,不知 ...
- 带大家用40行python代码实现一个疫情地图
最近两个月,因为新冠病毒无情的肆虐,相信会给每个中国人的记忆中画上重重的一笔.到今天为止,疫情形势依然十分严峻,虽然除湖北外的其他省份已经连续十一天确诊人数下降,但是接下来还有将近至少1.6亿的人口迁 ...
- 用 20 行 python 代码实现人脸识别!
点击上方"Python编程与实战",选择"置顶公众号" 第一时间获取 Python 技术干货! 阅读文本大概需要 11分钟. 今天给大家介绍一个世界上最简洁的人 ...
- 付费?是不可能的!20行Python代码实现一款永久免费PDF编辑工具
PDF(Portable Document Format),中文名称便携文档格式是我们经常会接触到的一种文件格式,文献.文档…很多都是PDF格式.它以格式稳定的优势,使得我们在打印.分享.传输过程中能 ...
- 再见,付费录屏软件!我用70行Python代码打造免费版!
- 六十来行python代码完成一个文件分类器
你的桌面是否像这样的一样被各种文件给堆满了,但是每一个文件又不清楚是否后面还有作用,也不敢删除,自己一个一个转移又太麻烦了.没关系,今天我带大家用python一起来做一个文件归类器,一键进行 ...
随机推荐
- 前端工程师应该知道的yarn知识
yarn 是在工作中离不开的工具,但在工作中,很多人基本只会使用 yarn install,而且会手动删除 node-modules,或删除 yarn.lock 文件等不规范操作.本文将从一些基础的知 ...
- 调研task_struct结构体
进程的描述PCB task_struct——PCB的一种,在linux中描述进程的结构体叫做task_struct. task_struct内容分类: 标识符:描述本进程的唯一标识符,用来区别其他进程 ...
- hdu 2066 Dijstra 堆优化
嗯 有广搜的意思 #include<cstdio> #include<iostream> #include<queue> #include<vector> ...
- RedHat7 配置yum源
今天需要搭建一个测试环境,没办法只能找了个Linux服务器,但是之前的其他同事弄过是其他系统的,不是centos的,所以只能自己搞. 合计直接百度,怎么安装docker,结果一直报错,下载失败之类的 ...
- SQLException: #22001你知道这个错误码吗
做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开! java.sql.SQLException: #22001 java.sql.SQLException: #22001 a ...
- UVA10140PrimeDistance题解--质数/技巧
题目链接 https://www.luogu.org/problemnew/show/UVA10140 分析 \(L,R\)都很大,显然不能直接筛出\(L,R\)区间中的质数,这里需要一个结论 结论 ...
- IOS开发copy,nonatomic, retain,weak,strong用法
readwrite 是可读可写特性;需要生成getter方法和setter方法时 readonly 是只读特性 只会生成getter方法 不会生成setter方法 ;不希望属性在类外改变 ass ...
- gitlab 搭建
一.ubuntu搭建gitlab 1. 如果以前有安装过gitlab请根据以下步骤来删除 https://www.cnblogs.com/shansongxian/p/6678110.htm ...
- Flutter 36: 图解自定义 View 之 Canvas (三)
小菜继续学习 Canvas 的相关方法: drawVertices 绘制顶点 小菜上次没有整理 drawVertices 的绘制方法,这次补上:Vertice 即顶点,通过绘制多个顶点,在进行连线,多 ...
- Delphi 抽象方法