python 贴吧自动回复机-python_库学习_02_微信自动回复机器人
一、python发展的趋势日益庞大,微信也有对应的库itchat。这次的实例做做成可在任意电脑运行的微信自动回复机器人exe.文件。
二、完成这个小应用我们需要装一些库,,
itchat;这个东东不出意外直接pip install itchat 就行了
pyinstaller;这个库是用来将你的.py文件打包成exe文件。
PS :当时这个库的用法确实卡了一会,网上看了很多文章,很杂,对于我个人而言这个库的使用并不需要那么麻烦,
直接打开cmd,cd 到你需要打包的py文件的文件夹位置直接使用命令:pyinstaller -F 文件名.py
-h, --help 查看帮助
-v, --version 查看 PyInstaller 版本
--clean 清理打包过程中的临时文件
-D, --onedir 默认值,生成 dist 目录
-F, --onefile 在 dist 文件夹中只生成独立的打包文件第
-p DIR, --paths DIR 添加 Python 文件使用的第三方库路径
-i <.ico or .exe,ID or .icns>,--icon <.ico or .exe,ID or .icns >指定打包程序使用的图标(icon)文件
三、现在我们还需要一个准备工作,www.tuling123.com 接入图灵机器人的API,
应用原理就是别人发信息给你,你转给机器人,机器人回复你转给发信息给你的人
在图灵123网站申请一个免费机器人,
ps:详情可参照图灵网的api使用文档不是很难
四、itchat
itchat要注册消息类型,比如注册了TEXT(itchat.content.text),就会接收文本消息,其他消息不会触发函数。消息类型见库中的content.py文件
消息类型判断,msg["Type’]
消息发起者,msg["FromUserName’]
消息接收者,msg["ToUserName’]
文本消息,msg["Content’]
文件名字,msg["FileName’]在python中,函数通过def关键字、函数名和可选的参数列表定义。通过return关键字返回值
importitchat
itchat.auto_login()#可设置hotReload = True等于记住密码,不用每次登陆扫码
itchat.run()
#coding=utf8
importrequestsimportitchat
KEY= '8edce3ce905a4c1dbb965e6b35c3834d'
defget_response(msg):#这里我们就像在“3. 实现最简单的与图灵机器人的交互”中做的一样
#构造了要发送给服务器的数据
apiUrl = 'http://www.tuling123.com/openapi/api'data={'key': KEY,'info': msg,'userid' : 'wechat-robot',
}try:
r= requests.post(apiUrl, data=data).json()#字典的get方法在字典没有'text'值的时候会返回None而不会抛出异常
return r.get('text')#为了防止服务器没有正常响应导致程序异常退出,这里用try-except捕获了异常
#如果服务器没能正常交互(返回非json或无法连接),那么就会进入下面的return
except:#将会返回一个None
return
#这里是我们在“1. 实现微信消息的获取”中已经用到过的同样的注册方法
@itchat.msg_register(itchat.content.TEXT)deftuling_reply(msg):#为了保证在图灵Key出现问题的时候仍旧可以回复,这里设置一个默认回复
defaultReply = 'I received:' + msg['Text']#如果图灵Key出现问题,那么reply将会是None
reply = get_response(msg['Text'])#a or b的意思是,如果a有内容,那么返回a,否则返回b
#有内容一般就是指非空或者非None,你可以用`if a: print('True')`来测试
return reply ordefaultReply
itchat.auto_login()
itchat.run()
python 贴吧自动回复机-python_库学习_02_微信自动回复机器人相关推荐
- python_库学习_02_微信自动回复机器人
一.python发展的趋势日益庞大,微信也有对应的库itchat.这次的实例做做成可在任意电脑运行的微信自动回复机器人exe.文件. 二.完成这个小应用我们需要装一些库,, itchat:这个东东不出 ...
- Python微信库:itchat ——实现微信自动回复
参考文章 http://www.nulll.me/index.php/archives/72.html https://blog.csdn.net/mdpsdhr/article/details/6 ...
- 【华为机考题库学习】--算法篇(更新中……)
系列文章目录 文章目录 系列文章目录 前言 一.HJ1 字符串最后一个单词的长度 二.HJ2 计算某字符出现的次数 三.HJ3 明明的随机数 四.HJ4 字符串分隔 五.HJ5 进制转换 六.HJ6 ...
- python requests是什么_python requests库学习
Requests python的request库官方介绍就是让HTTP服务人类,所以从这点我们就可以知道request库是为了让我们更加方便的进行http相关的各种操作 我们学习request有什么用 ...
- python中html.parser_Python html.parser库学习小结
分类路径:/Datazen/DataMining/Crawler/ 前段时间,一朋友让我做个小脚本,抓一下某C2C商城上竞争对手的销售/价格数据,好让他可以实时调整自己的营销策略.自己之前也有过写爬虫 ...
- python的wxpy库_Python库学习 wxpy - 微信机器人
本周考虑到实现一个微信机器人的功能,研究了一下 wxpy 这个库 参考文档 简单的demo 例子1:获取聊天群里面所有@我的消息,并回复信息 #!/usr/bin/env python # -*- c ...
- 做室内设计有必要学python吗_平面设计师学python_设计师学习编程意义大吗?
需要的,根据我的工作经验看,设计师学习编程最直观的好处有下面几个: 1.技多不压身,临时应急救场很有帮助. 在实际工作中,你很难确保你的每一个设计需求都有程序员能立即帮你实现. 打个比方,不是大厨每一 ...
- python requests 示例_Python3中requests库学习01(常见请求示例)
1.请求携带参数的方式 1.带数据的postdata=字典对象 2.带header的postheaders=字典对象 3.带json的postjson=json对象 4.带参数的postparams= ...
- python requests示例_Python3中requests库学习01(常见请求示例)
1.请求携带参数的方式 1.带数据的postdata=字典对象 2.带header的postheaders=字典对象 3.带json的postjson=json对象 4.带参数的postparams= ...
最新文章
- 一文读懂微服务架构的重构策略
- 目标检测--Light-Head R-CNN: In Defense of Two-Stage Object Detector
- Linux shell 自启动脚本写法
- iOS开展block说明
- in最多可以放多少?_车子不开,最多可以停放多少天?维修工:别超过这个时间...
- 操作系统-并发性:互斥与同步
- C# List 嵌套学习总结
- 云时代架构--阅读笔记03
- 使用 C# + SQLite + PetaPoco + django 快速打造桌面程序
- 天合汽车安全技术(张家港)有限公司
- 关于xmpp协议发送消息,登录认证SSL报错的问题
- WPF实现背景透明磨砂,并通过HandyControl组件实现弹出等待框
- android studio发布apk流程
- 抽象泄漏,或如何正确地将Oracle DATE与Hibernate绑定
- VS2010中预处理器定义
- 服务器主板点不亮排查
- java中,将string 转化成long
- Android移动应用开发大作业
- CentOS 系统及各版本介绍
- RHEL 7 使用 CentOS 源安装 docker ce