微信机器人用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,有啥问题都可以在群里提哈

猜你喜欢

转载自blog.csdn.net/qq_59848320/article/details/121428886