| |
|
|
开发:
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图书馆 购物 三丰科技 阅读网 日历 万年历 2025年12日历 | -2025/12/3 16:17:49- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |