gpt4 book ai didi

Python QQBot库的QQ聊天机器人

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 24 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Python QQBot库的QQ聊天机器人由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

本文实例为大家分享了python qqbot库的qq聊天机器人的具体代码,供大家参考,具体内容如下 。

项目地址:https://github.com/pandolia/qqbot 。

1.安装 。

?
1
pip install qqbot

2.主动发出消息 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from qqbot import _bot as bot
 
# 登录qq
bot.login([ '-q' , '2816626661' ])
 
'''
buddy 获取指定名称/备注的好友
group 获取群
'''
buddy = bot. list ( 'buddy' , 'b.k' )
 
# 判断是佛存在这个好友
if buddy:
  b = buddy[ 0 ]
  # 发送消息
  bot.sendto(b, 'nihao' )

3.根据事件回复消息 。

首先我们需要在命令行启动qq 。

?
1
2
3
c:\python3. 6.4 \virtual\env_qq\scripts>activate
 
(env_qq) c:\python3. 6.4 \virtual\env_qq\scripts>qqbot - q 2816626661

Python QQBot库的QQ聊天机器人

接下来编写自动回复的脚本 。

?
1
2
3
4
5
6
7
8
from qqbot import _bot as bot
 
def onqqmessage(bot, contact, member, content):
  if content = = '-hello' :
   bot.sendto(contact, '你好,我是qq机器人' )
  elif content = = '-stop' :
   bot.sendto(contact, 'qq机器人已关闭' )
   bot.stop()

接下来将其放入 c:\用户/xxxx/.qqbot-tmp/plugins/文件夹下 。

Python QQBot库的QQ聊天机器人

保持之前的命令行窗口运行,再重新启动一个,执行 。

?
1
qq plug recall

其中“recall”时刚才我们放进去的py文件名称 。

Python QQBot库的QQ聊天机器人

测试可行 。

Python QQBot库的QQ聊天机器人

参数说明:

bot     : qqbot 对象,提供 list/sendto/stop/restart 等接口、 contact : qcontact 对象,消息的发送者,具有 ctype/qq/uin/nick/mark/card/name 等属性 member  : qcontact 对象,仅当本消息为 群消息或讨论组消息 时有效,代表实际发消息的成员 content : str 对象,消息内容 。

4.结合图灵机器人 。

在这里注册一个图灵机器人账号http://www.tuling123.com/ 。

重新编写刚才的脚本 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
from qqbot import _bot as bot
import requests
import json
 
def getreplay(message):
  url = 'http://openapi.tuling123.com/openapi/api/v2'
  data = {
   "perception" : {
    "inputtext" : {
     "text" : message
    },
   },
   "userinfo" : {
    "apikey" : "你的apikey" ,
    "userid" : "你的uesrid"
   }
  }
  response = requests.post(url = url, json = data)
  return response.text
 
 
def onqqmessage(bot, contact, member, content):
  if content = = '-hello' :
   bot.sendto(contact, '你好,我是qq机器人' )
  else :
   response = getreplay(content)
   bot.sendto(contact, json.loads(response)[ 'results' ][ 0 ][ 'values' ][ 'text' ])

接下来重新加载一下就可以了.

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.

原文链接:https://blog.csdn.net/C_Ronaldo_/article/details/82117904 。

最后此篇关于Python QQBot库的QQ聊天机器人的文章就讲到这里了,如果你想了解更多关于Python QQBot库的QQ聊天机器人的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com