| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> 微信机器人用python的实现 -> 正文阅读 |
|
[Python知识库]微信机器人用python的实现 |
我横竖是睡不着,打开微信仔细看了半夜,才从字缝里看出字来,满满都写着六个字‘’好久没更新了”。 今天呢,就告诉大家微信机器人的实现方法。相信大家去百度微信机器人的时候,都会得到这样的一个模块itchat。但是你去用pip install itchat的时候。安装成功了。然后按照网上的教程来的时候。也弹出二维码了。但是。嘻嘻 弹出的二维码用不了!微信已经不支持网页版登录了 那行吧,就到这里了,我搞了好久也没办法。结束! 那可不,我就是为了说我微信机器人用不了才写的这个博客! 嘿嘿,但是天无绝人之路呀,去pypi看了一下。 发现有秘密! 在众多英文的包围中,那短短的一句中文,在告诉我这个itchat-uos不简单。一看时间还是2021年六月的。 itchat-uos可以用 ??????????????????——佚名 这个itchat-uos将网页登录的二维码改成桌面登录了。其他功能都可以用。 那好,接下来就进行微信智能机器人 这里用的是微信对话平台的机器人哈,至于为啥不用其他的。 微信的自热是要用微信的平台呀!(能白嫖当然白嫖呀,其他机器人接口不要钱呀!) ????????????????????????????????????????????????????????????????????------你怎么那么多为什么? 用这个微信的开放接口,回答还行,又免费。 至于代码呀,大概就是用requests来请求接口,数据里面带着你接收到信息。然后返回答案。 至于itchat吗,导入一下,用一下里面的send函数发送歌信息。在调用登录函数登录一下就行了 代码放下面了 import itchat#模块 import requests#请求微信的api的要用到这个模块,b站也是 import time import threading import datetime#获取时间 import json now = datetime.datetime.now() t = time.time()#获取时间戳 lists = [] #微信机器人 def signature():#来请求加密参数 ? data = {'userid':'11111'} ? api = requests.post('https://openai.weixin.qq.com/openapi/sign/d4SZNypgjnFDFeEElsO6wP5UXgzJjL',data=data) ? return api.json()["signature"] def liaotian(msg):#请求机器人回答 ? data = {'signature': signature(), ? ? ? ? ? 'query':msg, ? ? ? ? ? 'env':'debug'} ? api = requests.post('https://openai.weixin.qq.com/openapi/aibot/d4SZNypgjnFDFeEElsO6wP5UXgzJjL', data=data) ? print(api.json()) ? api = json.loads(api.text) ? if api['answer_type'] == 'news': ? ? ? neirong = (api['more_info']['news_ans_detail']) ? ? ? neirong = json.loads(neirong) ? ? ? neirong = (neirong["data"]['docs']) ? ? ? print(neirong[0]['abs_l']) ? ? ? return neirong ? if api['answer_type'] == 'music'and api['ans_node_name']=='音乐': ? ? ? neirong = (api['more_info']['music_ans_detail']) ? ? ? neirong = json.loads(neirong) ? ? ? neirong = (neirong["play_command"]['play_list']) ? ? ? album_name = neirong[0]['album_name'] ? ? ? album_pic_url = neirong[0]['album_pic_url'] ? ? ? author = neirong[0]['author'] ? ? ? url = neirong[0]['url'] ? ? ? answer = album_name + '\n' + album_pic_url + '\n' + author + '\n' + url ? ? ? print(answer) ? ? ? return answer ? if api['answer_type'] == 'music' and api['ans_node_name'] == 'FM-故事': ? ? ? ? ? neirong = (api['more_info']['fm_ans_detail']) ? ? ? ? ? neirong = json.loads(neirong) ? ? ? ? ? neirong = (neirong["audio_play_command"]["play_list"]) ? ? ? ? ? album_name = neirong[0]['album_name'] ? ? ? ? ? album_pic_url = neirong[0]['album_pic_url'] ? ? ? ? ? author = neirong[0]['author'] ? ? ? ? ? url = neirong[0]['url'] ? ? ? ? ? answer = album_name + '\n' + album_pic_url + '\n' + author + '\n' + url ? ? ? ? ? print(answer) ? ? ? ? ? return answer ? else: ? ? ? return api['answer'] def auto_reply():#定时发消息函数 ? if now.strftime("%H") == '18'and now.strftime("%M") == '09': ? ? ? pass @itchat.msg_register(itchat.content.TEXT) def text_reply(msg):#发送消息 ? print(msg['User']['NickName']) ? if msg['User']['NickName'] == 'kall':#限制的作用 ? ? ? print(msg.text) ? ? ? answer = liaotian(msg.text) ? ? ? answers = answer ? ? ? return str(answers) itchat.auto_login()#登录 threading._start_new_thread(itchat.run,())#开启一个新线程 while 1:#检测是否满足定时函数 ? ? ? itchat.configured_reply() ? ? ? auto_reply() 大概就是这样了 照样水一下qq群 342096685,有啥问题都可以在群里提哈 ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 0:51:49- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |