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 相关文章推荐
django通过ajax发起请求返回JSON格式数据的方法
Jun 04 Python
python列出目录下指定文件与子目录的方法
Jul 03 Python
python安装numpy&安装matplotlib& scipy的教程
Nov 02 Python
Python延时操作实现方法示例
Aug 14 Python
Python实现登陆文件验证方法
Oct 06 Python
python实现大战外星人小游戏实例代码
Dec 26 Python
Python实现括号匹配方法详解
Feb 10 Python
django在保存图像的同时压缩图像示例代码详解
Feb 11 Python
Python如何使用内置库matplotlib绘制折线图
Feb 24 Python
Python3.6 中的pyinstaller安装和使用教程
Mar 16 Python
Python环境配置实现pip加速过程解析
Nov 27 Python
Python常遇到的错误和异常
Nov 02 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
15种PHP Encoder的比较
2007/03/06 PHP
php中使用base HTTP验证的方法
2015/04/20 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
键盘控制事件应用教程大全
2006/11/24 Javascript
javascript 打印内容方法小结
2009/11/04 Javascript
JavaScript自定义DateDiff函数(兼容所有浏览器)
2012/03/01 Javascript
javascript的console.log()用法小结
2012/05/31 Javascript
设为首页加入收藏兼容360/火狐/谷歌/IE等主流浏览器的代码
2013/03/26 Javascript
JavaScript编写推箱子游戏
2015/07/07 Javascript
基于jquery编写的放大镜插件
2016/03/23 Javascript
Node.js的文件权限及读写flag详解
2016/10/11 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
2016/10/11 Javascript
js制作支付倒计时页面
2016/10/21 Javascript
js实现从左向右滑动式轮播图效果
2017/07/07 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
javascript中的event loop事件循环详解
2018/12/14 Javascript
浅谈vue 锚点指令v-anchor的使用
2019/11/13 Javascript
es6中class类静态方法,静态属性,实例属性,实例方法的理解与应用分析
2020/02/15 Javascript
[05:07]DOTA2英雄梦之声_第14期_暗影恶魔
2014/06/20 DOTA
Django rest framework实现分页的示例
2018/05/24 Python
python随机数分布random测试
2018/08/27 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
浅谈keras保存模型中的save()和save_weights()区别
2020/05/21 Python
python常量折叠基础知识点讲解
2021/02/28 Python
HTML5 window/iframe跨域传递消息 API介绍
2013/08/26 HTML / CSS
美国著名珠宝品牌之一:Jared The Galleria Of Jewelry
2016/10/01 全球购物
美国女士时尚珠宝及配饰购物网站:Icing
2018/07/02 全球购物
一套Delphi的笔试题一
2016/02/14 面试题
交通安全教育制度
2014/02/02 职场文书
教师职称自我鉴定
2014/02/12 职场文书
公司年会搞笑主持词
2014/03/24 职场文书
学校节能减排方案
2014/06/13 职场文书
青年岗位能手事迹材料
2014/12/23 职场文书
《巨人的花园》教学反思
2016/02/19 职场文书
创业计划书之校园跑腿公司
2019/09/24 职场文书
MySQL Server层四个日志的实现
2022/03/31 MySQL