使用python构造一个微信聊天机器人

最近在学python的过程中无意间发现一个python库:wxpy,其可以实现让微信自动接收、处理消息并进行回复的一系列功能。感觉挺有意思的,便自行摸索学习,并成功地实现了其功能,故写下此博客作学习分享。

1.安装wxpy

wxpy 支持 Python 3.4-3.6,以及 2.7 版本。

PYPI 官方源下载安装:

pip install -U wxpy

从豆瓣 PYPI 镜像源下载安装:

pip install -U wxpy -i "https://pypi.doubanio.com/simple/"

推荐国内用户使用镜像源下载安装,相比官方源更稳定,需要注意的是,若想确保安装到对应的 Python 版本中,命令中的 “pip” 替换为 “pip3” 或 “pip2”。

linux下还需安装pillow:

pip install pillow

2.申请一个图灵的APIKEY

需要去官网注册一个图灵机器人并获取APIKEY.(图灵机器人是一个中文语境下的对话机器人,可以使用免费版,一个账号最多可以创建5个机器人,一个机器人日调用接口数5000次)

官网地址:图灵机器人-智能好用的聊天机器人

若觉得麻烦不想注册也可以,不需要APIKEY也可以实现简单的微信定时发送消息,简单回复等功能,如果想要智能化的自动回复功能,还是乖乖去注册吧。

3.用wxpy登录,发送和回复消息

  1. 登录
from wxpy import * # 导入模块
bot = Bot() # 初始化机器人,扫码登陆,但每次登陆都得重新扫码
#bot = Bot(cache_path=True)
#把登录信息保存下来,不想每次都扫码的可以用这一条

运行后会弹出微信登录的二维码,扫描后登录网页版微信

2.发送消息

friend = bot.friends().search(u'你好友的名字')[0]
friend.send(u"哈哈")
#指定某个好友并向其发送消息

运行后会向指定好友发送所写的内容,可以在这个功能的基础上进一步实现定时向某人发送消息的功能。我发现一篇关于“教你用微信每天给女朋友说晚安”的文章,有兴趣可以看一下python实战===教你用微信每天给女朋友说晚安 - botoo - 博客园

3.回复消息

@bot.register()
def reply_msg(msg):  msg.reply(u'本人正忙,请稍后回复')
embed()

当好友向你发送消息后就会得到统一回复“本人正忙,请稍后回复”。

4.调用图灵机器人API,实现自动回复

from wxpy import * #导入模块
bot = Bot(cache_path=True)#扫码登陆
tuling = Tuling(api_key='自行输入')#初始化图灵机器人@bot.register(msg_types=TEXT)
def auto_reply_all(msg):tuling.do_reply(msg)
#自动回复功能,回复所有消息
bot.join()#开始运行

以下即为我运行成功自动回复的结果

(以上源码均源自网络)

关于用图灵的APIKEY来实现自动回复的文章我还收藏了几篇

使用python构造一个微信聊天机器人_getcomputerstyle的博客-CSDN博客

利用python搭建微信聊天机器人_lin_zhongmu的博客-CSDN博客

python-微信机器人_C_hao-CSDN博客

5.关于可能出现的错误

我在实现微信自动回复的过程中也不是一帆风顺的,在安装好wxpy,做好前期准备后,运行程序时出现ImportError: No module named 'wxpy'的错误,找了很久总是找不到解决方法,最后才在该文中找到解决方案:python模块以及导入出现ImportError: No module named 'xxx'问题_我的新博客-CSDN博客

我把自己做的py文件放到 site_packages 目录下,直接运行,成功地解决了问题。

还有就是关于'sudo'不是内部或外部命令,也不是可运行的程序或批处理文件的错误,该文也给出了解决方案:

http://www.zhimengzhe.com/windows/62640.html

6.关于wxpy的一些文章

Python玩微信(1):初探wxpy - 简书

https://www.jianshu.com/p/ef75e97146c2

【铁窗泪】:一个作死的聊天机器人导致微信被封号始末(超搞笑)_i春秋学院_新浪博客

需要注意的是不知道用微信机器人会不会有被封号的危险,所以建议大家用小号。

关于Python构造机器人的学习分享就到这里,对于Python的学习,今后还会不定时更新,和我一样在自学Python的小伙伴可以关注一波,互相激励。

Python 微信机器人相关推荐

  1. python微信机器人部署服务器_玩法收藏/云服务器/零基础微信机器人实践( Python )...

    最近想做个微信机器人,主要是为了个人方便.在腾云阁发现这个教程,得到了一些启发.(修改转载已取得腾讯云授权) 技术路径和实现思路 首先编程语言使用了 Python , Python 语法简洁.第三方扩 ...

  2. python 微信机器人_Python 微信机器人

    一.写在前边的话 如何做一个自动回复的微信机器人?机器人的功能有,自动加好友,关键字回复,等等,它甚至可以成为你的私人管家,只要你的代码到位.今天,主要讲解下,微信机器人-图灵版. 二.准备 1.py ...

  3. python 微信机器人教程_Python实现微信机器人的方法

    最近在学python的过程中无意间发现一个python库:wxpy,其可以实现让微信自动接收.处理消息并进行回复的一系列功能.感觉挺有意思的,便自行摸索学习,并成功地实现了其功能. 当我们打开微信,就 ...

  4. python 微信机器人教程_Python创建微信机器人(附赠Python视频教程)

    微信,一个日活10亿的超级app,不仅在国内社交独领风骚,在国外社交也同样占有一席之地.今天我们要讲的便是如何用Python来做一个微信聊天机器人,突然想起鲁迅先生曾经说过的一句话: 因为是微信机器人 ...

  5. 会聊天、提醒、撩妹的Python微信机器人你肯定没见过

    阅读文本大概需要 6 分钟. 看过 pk 哥之前的文章的小伙伴知道,pk 哥写过关于微信机器人的文章(用 Python 玩微信,机器人陪你唠嗑)和定时给心仪的伙伴发送早安或者祝福语录(Python 教 ...

  6. python 微信机器人,微信自动回复

    使用python现成的模块 itchat,可以实现,微信机器人的自动回复 其内部原理,是模拟了web版微信的登录,然后进行消息的接收发送,并不是只能用python实现,其他后端语言都可以做到 下面是使 ...

  7. python微信机器人库_Python微信机器人

    1.需要用到的模块: requests:Requests 是用 Itchat:itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单. 使用不到三十行的代码,你就可以完成一个能够 ...

  8. Python 微信机器人

    1.微信库选择 python关于开发微信的库主要有itchat和wxpy,而wxpy底层是调用的itchat,所以如果你只是要使用的话建议使用wxpy库,它比其他的库都要优雅,更面向对象,而且深度整合 ...

  9. Python 微信机器人:属于自己的微信机器人制作,简单易懂。图灵机器人接口api调用

    首先你需要安装 itchat 库. 进入 cmd,先直接 pip install itchat 就好了. 我调的是图灵机器人的接口,可以了解一下: 图灵机器人的注册,图灵机器人api获取方式 微信机器 ...

  10. Python 微信机器人-用itchat库向好友发送名片、转发名片实例演示

    先看效果图: 我发给机器人的名片,它存了下来,然后再发送给我. itchat.content.CARD 就是名片类型,当微信接收到名片就会触发. itchat.send_raw_msg() 就是发送名 ...

最新文章

  1. darknet53的网络结构笔记
  2. 在Autodesk应用程序商店发布基于浏览器的Web应用程序
  3. 给C#开发者的代码审查清单
  4. php tcp和udp的区别,HTTPS 和 HTTP、UDP 和 TCP 的区别
  5. 计算机信息安全基础薄弱具体,信息安全工程师易错题精讲十三
  6. centos7 mysql.h_centos7下致命错误:mysql/mysql.h:没有那个文件或目录
  7. android复用字符串文件夹,如何从Android Studio中的值xml字符串文件夹更改字体
  8. 表达式转换成后缀表达式进行计算
  9. 对hashMap中的value进行排序
  10. linux基础之软件包管理
  11. 观点丨企业云管平台(CMP)项目成功的关键因素
  12. 比Google Map更加清晰的网络地图——RealBird
  13. 152.乘积最大子序列
  14. 【Latex】Latex小论文模板
  15. java汉字的编码_JAVA汉字编码问题
  16. python人民币转大写_python实现人民币大写转换
  17. 一次性餐巾行业调研报告 - 市场现状分析与发展前景预测
  18. DOSBox常用快捷键
  19. Cacti 无法启用气象图和气象图中图标添加
  20. 一起聆听碳氮循环研究新动态,我们在苏州期待您的精彩分享和参与!

热门文章

  1. 三进制计算机未来的发展趋势,如果研制出三进制计算机会怎样?
  2. android inflate,android inflate详解
  3. 树梅派应用16: 树莓派“瑞士军刀”扩展板教程 V1.X TO V2.X 的适配说明
  4. 麦德龙的商品供应链管理
  5. 但行好事 莫问前程(九月)
  6. 树莓派OS Lite系统安装LXDE桌面环境
  7. win10锁屏壁纸文件夹位置
  8. 财务大数据课程要学python吗_大数据不用学python吗?
  9. 2019年Unity学习资源指南[精心整理]
  10. 书单丨跟着院士学区块链:系统理解区块链技术