今天要教大家一个黑科技,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下如图所示

登录成功后如下图所示:

大致原理简介:

  1. 用到两个库,一个itchat,一个requests,如果你import itchat 没用出异常,也说明你之前安装itchat库成功啦,requests是网络请求库,python自带的,用于调用图灵机器人API

  2. @itchat.msg_register(itchat.content.TEXT):用于接收来自朋友间的对话消息  #如果不用这个,朋友发的消息便不会自动回复

  3. @itchat.msg_register([itchat.content.TEXT], isGroupChat=True):用于接收群里面的对话消息

  4. 实现原理也很简单,接受到信息,调用get_response()方法,把消息传给图灵机器人,然后接收的回复信息再返回给微信,大致是这个原理

    最后是登录接口的调用,执行itchat.auto_login(),执行的python代码,会弹出一个登录二维码,类似网页端的扫码登录,你扫码登录后,就会由机器人替你处理朋友以及群里发来的消息啦,当然,如果不希望机器处理,你退出网页端的登录即可

  至此,你的微信小助手,就完成了,可以静静的看着它撩妹,讲故事了。如有疑问,可扫描。以下二维码,进入公众号,进行咨询

如何用20行Python代码打造一个微信群聊助手?的更多相关文章

  1. 40多行python代码开发一个区块链。

    40多行python代码开发一个区块链?可信吗?我们将通过Python 2动手开发实现一个迷你区块链来帮你真正理解区块链技术的核心原理.python开发区块链的源代码保存在Github. 尽管有人认为 ...

  2. 20行Python代码爬取王者荣耀全英雄皮肤

    引言王者荣耀大家都玩过吧,没玩过的也应该听说过,作为时下最火的手机MOBA游戏,咳咳,好像跑题了.我们今天的重点是爬取王者荣耀所有英雄的所有皮肤,而且仅仅使用20行Python代码即可完成. 准备工作 ...

  3. 20行Python代码开发植物识别 app

    这篇文章介绍如何用Python快速实现一个植物识别的app,家里养了几盆多肉还叫不上名字,正好拿来识别一下.实现这样一个app只需要20行左右的代码,先来看下效果: 另外,我也开发了微信小程序版本,大 ...

  4. 20行Python代码检测人脸是否佩戴口罩

    最近,口罩成为绝对热门的话题,在疫情之下,出门不戴口罩不仅对自己不负责,对他人而言也是一种潜在的威胁.所以许多小区都有保安在门口守着,谁要是不戴口罩就吼回去(吓死我了). 很多人学习python,不知 ...

  5. 带大家用40行python代码实现一个疫情地图

    最近两个月,因为新冠病毒无情的肆虐,相信会给每个中国人的记忆中画上重重的一笔.到今天为止,疫情形势依然十分严峻,虽然除湖北外的其他省份已经连续十一天确诊人数下降,但是接下来还有将近至少1.6亿的人口迁 ...

  6. 用 20 行 python 代码实现人脸识别!

    点击上方"Python编程与实战",选择"置顶公众号" 第一时间获取 Python 技术干货! 阅读文本大概需要 11分钟. 今天给大家介绍一个世界上最简洁的人 ...

  7. 付费?是不可能的!20行Python代码实现一款永久免费PDF编辑工具

    PDF(Portable Document Format),中文名称便携文档格式是我们经常会接触到的一种文件格式,文献.文档…很多都是PDF格式.它以格式稳定的优势,使得我们在打印.分享.传输过程中能 ...

  8. 再见,付费录屏软件!我用70行Python代码打造免费版!

  9. 六十来行python代码完成一个文件分类器

    ​    你的桌面是否像这样的一样被各种文件给堆满了,但是每一个文件又不清楚是否后面还有作用,也不敢删除,自己一个一个转移又太麻烦了.没关系,今天我带大家用python一起来做一个文件归类器,一键进行 ...

随机推荐

  1. Jobs(二) Servlet的配置

    折腾了一会,终于实现了:在浏览器中输入数据,然后在Java类中取出输出,并使浏览器重定向(接收一个request,返回一个response). 这里有几个问题需要详细记录一下. 首先是request的 ...

  2. 怎样设置HTTP请求头Header

    使用: xhr.setRequestHeader(); xhr.setRequestHeader('Content-Type', 'application/json'); xhr.setRequest ...

  3. .NET Core 创建Windows服务

    .NET Core 创建Windows服务 作者:高堂 原文地址:https://www.cnblogs.com/gaotang/p/10850564.html 写在前面 使用 TopShelf+Au ...

  4. javaIO——BufferedReader

    今天来学习一下 java.io.BufferedReader ,从命名可以看出,跟前面学习的 StringReader 和 CharArrayReader 有些不一样,这些都是按照数据源类型命名,Bu ...

  5. JS数组判断,方法

    怎么判断一个对象是不是数组? 首先可以用 ES5 提供的 isArray 方法进行判断(注意:Array.isArray是ES 5.1推出的,不支持IE6~8,所以在使用的时候也应注意兼容问题. ) ...

  6. vue报类似警告Computed property "isLoading" was assigned to but it has no setter

    一.原因:一个计算属性,当计算传入的是一个函数,或者传入的是一个对象,而没有设置 setter,也就是 set 属性,当你尝试直接该改变这个这个计算属性的值,都会报这个警告,vuex还会出现通过com ...

  7. [LeetCode] 39. Combination Sum ☆☆☆(数组相加等于指定的数)

    https://leetcode.wang/leetCode-39-Combination-Sum.html 描述 Given a set of candidate numbers (candidat ...

  8. 如何从零搭建hexo个人博客网站

    https://www.jianshu.com/p/adf65cbad393?utm_source=oschina-app   准备工作 github账号 node.js 环境搭建 git使用 mar ...

  9. java 日期。时间

    友情链接: https://www.cnblogs.com/wanson/articles/10818955.html

  10. 01_Hive简介及其工作机制

    1.Hive简介 Hive是一个基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一个表.并提供类SQL查询功能, 可以将sql语句转换为MapReduce任务运行.其优点是学习成本低, ...