用Python制作QQ机器人聊天插件(1)

目录

制作插件

1.找到插件文件夹

搭建好我们的机器人环境后,打开放置机器人的文件夹,找到 src文件夹 打开后找到

2.填写代码

运行效果


上期博文介绍了QQ机器人框架搭建,这期介绍QQ机器人聊天插件制作!不会搭建QQ机器人框架的看我上期教程

https://blog.csdn.net/qq_53280175/article/details/119281188

用Python制作QQ机器人聊天插件(1)_第1张图片 


 

 

制作插件

1.找到插件文件夹

搭建好我们的机器人环境后,打开放置机器人的文件夹,找到 src文件夹 打开后找到

plugins 文件夹打开它,这个文件夹就是用来存放插件的文件夹。在其中新建  xxx.py 名字随意。

2.填写代码

打开后填写如下代码:

"""
作者:PYmili
Time:2021/10/2
os_system:Windows 10
"""
#coding:gbk
from urllib.request import urlopen
from bs4 import BeautifulSoup as Be
import urllib.parse
import string

from nonebot import on_command,on_keyword
from nonebot.adapters.cqhttp import Bot, Event
from nonebot.rule import to_me

lt = on_keyword("#") # 设置聊天命令

@lt.handle()
async def handle_first_receive(bot: Bot, event: Event, state: dict):
    args = str(event.get_message()).strip()  # 首次发送命令时跟随的参数
    if args:
        state["user_msg"] = args  # 如果用户发送了参数则直接赋值


@lt.got("user_msg", prompt="你想和我聊些什么?")
async def handle_user(bot: Bot, event: Event, state: dict):
    user_msg = state["user_msg"]
    user_msg_message = await get_lt(user_msg)
    #await lt.finish(user_msg_message)


async def get_lt(user_msg: str): # 编写爬虫
    message = user_msg.strip("#") # 去掉字符串#
    url = ("https://api.iyk0.com/liaotian/?msg={}").format(message) # api
    urls = urllib.parse.quote(url,safe=string.printable)
    html = urlopen(f"{urls}")
    bs = Be(html,features="lxml")

    html_div = bs.findAll("body") # 爬取api网页body标签
    mesage = (html_div[0].get_text()) # 返回数据
    fst = await lt.send(f"{mesage}")
    return fst # 返回并发送信息

这些就是QQ机器人聊天插件的代码。填写到你的 .py 文件中就行了!原理是,设定命令 '#' 是聊天命令要触发条件或与机器人聊天时,需要在说的话前面添加 # 号 如:#你是谁 爬虫部分去掉字符串 # 与api连接爬取api返回的数据。发送给用户 await 很简单吧?当然,其中的爬虫部分和api你可以更换成你喜欢的,用 await 发送出来就行了。


运行效果

用Python制作QQ机器人聊天插件(1)_第2张图片

怎么样,学会了吗?我就一个小小的要求!三联!谢谢啦!

我是PYmili QQ交流群: 706128290 下次再见,拜拜!

用Python制作QQ机器人聊天插件(1)_第3张图片

 

你可能感兴趣的:(python,QQ机器人,python机器人,python,pycharm,人工智能,爬虫)