Python使用20行代码实现微信聊天机器人


Posted in Python onJune 05, 2020

近来,打开微信群发消息,就会秒收到一些活跃分子的回复,有的时候感觉对方回答很在理,但是有的时候发现对方的回答其实是驴唇不对马嘴,仔细深究发现,原来对方是机器人。今天,小编就带大家用20行代码,带你一起打造一个微信聊天机器人,让你的微信群一直嗨不停~~

首先我们需要安装一个微信相关的第三方库,itchat,在Windows上通过命令:pip install itchat,就可以将其安装。

其二,我们需要去图灵机器人官网:http://www.tuling123.com,注册一下,即可获得一个机器人API。过程很简单,小伙伴不用担心,两分钟就可以搞定了,在如下的界面进行机器人名称、应用领域、终端进行设置即可。

Python使用20行代码实现微信聊天机器人

创建机器人

之后就会得到一个机器人API,如下图所示:

Python使用20行代码实现微信聊天机器人

机器人API

当然你也可以绑定微信号、微信公众号或者扣扣、微博等。其实很多的淘宝店、京东商城也都是这种套路,只不过那些机器人更加“聪明”些,比较是高价买入的,而我们使用的只是免费的版本,但是对于我们本着玩玩的心态来说,已经非常不错了。

Python使用20行代码实现微信聊天机器人

上述准备工作完成之后,我们就要开始写代码了。打开pycharm,具体代码如下图所示:

import itchat
import requests
def get_response(msg):
apiUrl = 'http://www.tuling123.com/openapi/api'
data = {
'key': '180b4304b4b647d3b1920caf60f', /# Tuling Key,API的值
'info': msg, /# 发出去的消息
'userid': 'xuebaobao', /# 用户名。随意设置
}
r = requests.post(apiUrl, data=data).json() /# post请求
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(hotReload==True) /# 通过微信扫描二维码登录
itchat.run()

之后右键运行程序,尔后会弹出二维码,之后在手机上进行扫码授权,让机器人登录即可。这个过程需要耐心的等待一小会,接下来只要你的微信好友或者微信群发来任何消息,你都会立马自动进行回复,根本停不下来。如果只需要在微信群中回复的话,那么只需要把微信好友接收消息的方法进行注释即可,同理,微信群也是如此。

Python使用20行代码实现微信聊天机器人

图灵机器人

最后安利一下,itchat.auto_login()方法。这个方法的意思是通过微信扫描二维码登录。但是这种登录的方式确实短时间的登录,并不会保留登录的状态,也就是下次登录时还是需要扫描二维码,如果加上hotReload==True的话,那么就会保留登录的状态,至少在后面的几次登录过程中不会再次扫描二维码,该参数生成一个静态文件itchat.pkl,和实现机器人这个代码在同一个目录下,其作用是用于存储登录状态。

Python使用20行代码实现微信聊天机器人

机器人聊天图

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Mac中升级Python2.7到Python3.5步骤详解
Apr 27 Python
Python字典循环添加一键多值的用法实例
Jan 20 Python
Python删除n行后的其他行方法
Jan 28 Python
Django工程的分层结构详解
Jul 18 Python
python点击鼠标获取坐标(Graphics)
Aug 10 Python
python requests证书问题解决
Sep 05 Python
keras打印loss对权重的导数方式
Jun 10 Python
解决Keras 自定义层时遇到版本的问题
Jun 16 Python
Python虚拟环境的创建和使用详解
Sep 07 Python
python 爬虫如何正确的使用cookie
Oct 27 Python
Python实现曲线拟合的最小二乘法
Feb 19 Python
Python基础之数据类型知识汇总
May 18 Python
Python并发请求下限制QPS(每秒查询率)的实现代码
Jun 05 #Python
Python爬虫爬取百度搜索内容代码实例
Jun 05 #Python
python3读取autocad图形文件.py实例
Jun 05 #Python
Python实现加密接口测试方法步骤详解
Jun 05 #Python
基于python 将列表作为参数传入函数时的测试与理解
Jun 05 #Python
python 引用传递和值传递详解(实参,形参)
Jun 05 #Python
Python检测端口IP字符串是否合法
Jun 05 #Python
You might like
sql注入与转义的php函数代码
2013/06/17 PHP
浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑
2017/10/13 PHP
PHP按一定比例压缩图片的方法
2018/10/12 PHP
PHP抽象类基本用法示例
2018/12/28 PHP
PHP连接MySQL数据库的三种方式实例分析【mysql、mysqli、pdo】
2019/11/04 PHP
extjs 学习笔记 四 带分页的grid
2009/10/20 Javascript
JS关闭窗口或JS关闭页面的几种代码分享
2013/10/25 Javascript
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
node.js中的fs.chownSync方法使用说明
2014/12/16 Javascript
轻松创建nodejs服务器(10):处理POST请求
2014/12/18 NodeJs
JavaScript里四舍五入函数round用法实例
2015/04/06 Javascript
jQuery实现垂直半透明手风琴特效代码分享
2015/08/21 Javascript
Node.js编写爬虫的基本思路及抓取百度图片的实例分享
2016/03/12 Javascript
javascript 闭包详解及简单实例应用
2016/12/31 Javascript
解析NodeJS异步I/O的实现
2017/04/13 NodeJs
vue-cli开发时,关于ajax跨域的解决方法(推荐)
2018/02/03 Javascript
Vue实现美团app的影院推荐选座功能【推荐】
2018/08/29 Javascript
vue-quill-editor富文本编辑器简单使用方法
2018/09/21 Javascript
vue-cli中使用高德地图的方法示例
2019/03/28 Javascript
微信小程序调用wx.getImageInfo遇到的坑解决
2020/05/31 Javascript
[03:12]完美世界DOTA2联赛PWL DAY9集锦
2020/11/10 DOTA
使用Python编写一个在Linux下实现截图分享的脚本的教程
2015/04/24 Python
Python WXPY实现微信监控报警功能的代码
2017/10/20 Python
python的re正则表达式实例代码
2018/01/24 Python
Pytorch释放显存占用方式
2020/01/13 Python
Python3 集合set入门基础
2020/02/10 Python
python:删除离群值操作(每一行为一类数据)
2020/06/08 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
2020/06/24 Python
全网最细 Python 格式化输出用法讲解(推荐)
2021/01/18 Python
在线课程:Skillshare
2019/04/02 全球购物
伦敦香水公司:The London Perfume Company
2019/11/13 全球购物
2015年销售内勤工作总结
2015/04/27 职场文书
大学优秀学生主要事迹材料
2015/11/04 职场文书
创业计划书之便利店
2019/09/05 职场文书
Spring整合Mybatis的全过程
2021/06/28 Java/Android
MySQL插入数据与查询数据
2022/03/25 MySQL