微信聊天机器人
2018-08-10 23:52:20来源:博客园 阅读 ()
准备工作:
安装itchat:安装命令pip install itchat
1.导入itchat模块,给文件传输助手发一句话
import itchat itchat.auto_login(hotReload=True) itchat.send("你好,文件传输助手",toUserName='filehelper')
运行代码,扫二维码,也就是登陆网页版微信,会自动将"你好,文件传输助手"传输到手机上。
itchat.auto_login(hotReload=True)的目的是为了让你能够保持登陆,近期可以不用扫二维码。
itchat.send()是发送消息,“”里面是想要发送的内容,toUserName是要发送的对象。在微信内部,文件传输助手就是filehelper。
2.如果想要发送给指定的人。不是简单的将filehelper换掉就OK的。要先搜索你想发送人的备注名。
import itchat itchat.auto_login(hotReload=True) users= itchat.search_friends("星夜") userName = users[0]['UserName'] itchat.send("星夜,你好美",toUserName=userName)
具体了解可以查看https://blog.csdn.net/Lynn_coder/article/details/79436539
3.处理文本信息,让机器重复说的话
from itchat.content import TEXT import itchat @itchat.msg_register(TEXT) def text_reply(msg): print(msg) return msg.text itchat.auto_login(hotReload=True) itchat.run()
4.新建一个文件夹,取名为file,处理图片视频信息,让机器返回同样的消息
import itchat import os from itchat.content import PICTURE,VIDEO @itchat.msg_register([PICTURE , VIDEO]) def text_reply(msg): file_name = os.path.join('file',msg.fileName) msg.download(file_name) #download是将文件流写入到文件名对应的文件 msg_type = { PICTURE: 'img', VIDEO: 'vid' }.get(msg.type,'fil') return '@%s@%s' % (msg_type,file_name) itchat.auto_login(hotReload=True) itchat.run()
5.申请图灵机器人账号,用图灵机器人自动给好友回复文字图片消息
import itchat import os import requests from itchat.content import TEXT,PICTURE,VIDEO,SHARING KEY = '' 此处填上图灵机器人聊天的key def get_response(msg,uid): api_url = 'http://www.tuling123.com/openapi/api' data = {'key':KEY,'info':msg,'userid':uid} r = requests.post(api_url,data=data).json() return r.get('text','') @itchat.msg_register(TEXT) def reply_text(msg): msg_text = msg.text reply = get_response(msg_text, msg.FromUserName) return reply @itchat.msg_register([PICTURE,VIDEO,SHARING]) def download_file(msg): file_name = os.path.join('file',msg.fileName) msg.download(file_name) msg_type = msg.type msg_type = {PICTURE:'img',VIDEO:'vid'}.get(msg_type,'fil') return '@%s@%s' %(msg_type,file_name) itchat.auto_login(hotReload=True) itchat.run()
6. 如果想要在群里回复消息,只需要在每个装饰器括号内容的末尾加上引号里面的内容”,isGroupChat=True“就可以了。装饰器就是以@开头的那一行,代码中标红部分。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:模块进阶
- 微信推送功能实现 2019-07-24
- 手把手教你微信好友头像形成指定的文字 2019-07-24
- python探索微信朋友信息 2019-06-14
- 剑指offer-机器人的运动范围 2019-05-16
- Django2.0+小程序技术打造微信小程序助手百度云 2019-05-16
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash