Project_2 机器人开发计划
前言#
{% tabs 前言 %}
其实几年前就有这个想法,但由于水平不够+懒+仅仅出于兴趣就没搞,今年年初了解到酷Q项目的停止,就觉得可惜,深感自己再不行动可能就会让玩机器人的梦永远只是个梦,也算是实现一个几年前的梦想吧…
显然,简单Robot的开发是非常容易理解的,本文性质为导向性说明文,旨在为业余爱好者指一条路。即便你无计算机基础,也可快速上手。
感谢以下项目,让我得以实现一个小梦想
{% sitegroup %} {% site Mirai, url=https://github.com/mamoe/mirai ↗, screenshot=https://www.helloimg.com/images/2021/08/06/CtBl7A.png ↗, avatar=https://www.helloimg.com/images/2021/08/06/CtBtvg.png ↗, description=Mirai官方%} {% site Python, url=https://www.python.org/ ↗, screenshot=https://www.helloimg.com/images/2021/08/06/CtB2C5.png ↗, avatar=https://www.helloimg.com/images/2021/08/06/CtBWwm.png ↗, description=Python官网%} {% site mirai-api-http, url=https://github.com/project-mirai/mirai-api-http ↗, avatar=https://www.helloimg.com/images/2021/08/06/CtBtvg.png ↗, screenshot=https://www.helloimg.com/images/2021/08/06/CtBl7A.png ↗, description=Mirai官方团队开发的插件%} {% site Graia Framework, url=https://github.com/GraiaProject/Application ↗, screenshot=https://www.helloimg.com/images/2021/08/06/CtBTt0.png ↗, avatar=, description=GreyElaina 的作品之一%} {% endsitegroup %}{% endtabs %}
准备工作#
{% tabs 准备工作 %}
需要强调的是腾讯的风控策略,新注册的小号应在即将运行的服务器上挂载一个月左右时间,否则容易被封禁。{% span red, 不建议使用大号!!! %}
{% link Mirai官方教程贴, https://docs.mirai.mamoe.net/, https://www.helloimg.com/images/2021/08/06/CtBtvg.png %}请参考以上教程贴完成Mirai的运行(启动控制台) {% note success simple %}如果你遵循以上教程安装了最新的MCL,那么Java及mirai-api-http均已自动附加。{% endnote %} {% note info simple %}若你没有Java或mirai-api-http请手动附加,对此存疑请百度。{% endnote %} {% btns circle center grid5 %} {% cell 清华大学开源软件镜像站, https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/ ↗, https://www.helloimg.com/images/2021/08/07/CtqBO1.png ↗ %} {% cell OpenJDK15安装向导, https://bot-1304934357.cos.ap-beijing.myqcloud.com/OpenJDK15U-jdk_x64_windows_hotspot_15.0.2_7.msi ↗, https://www.helloimg.com/images/2021/08/07/CtaITX.png ↗ %} {% cell mirai-api-http-v1.12.0, https://bot-1304934357.cos.ap-beijing.myqcloud.com/mirai-api-http-v1.12.0.mirai.jar ↗, https://www.helloimg.com/images/2021/08/06/CtBtvg.png ↗ %}
在上一步操作中,我们启动了Mirai控制台,现在我们需要进行一些调试。
请在控制台输入”/login qq账号 qq密码”,完成滑块验证,完成登录。
{% note success simple %}如果你已经完成了这三步操作,那么恭喜你,你离成功很近了!{% endnote %}
{% note info simple %}若无法登录,下面的步骤便失去意义。请在所登录设备上安装官方QQ并登录挂机,约一个月后再次尝试。
{% endnote %}
{% endtabs %}
食用方法#
{% note info simple %}现在你有两个选择,使用现成插件或自行构建插件,这里只介绍后者。{% endnote %}
{% tabs 使用方法 %}
Python的安装
新建bot.py,对内容进行编辑。
{% codeblock %}
from graia.broadcast import Broadcast
from graia.application import GraiaMiraiApplication, Session
from graia.application.message.chain import MessageChain
import asyncio
from graia.application.message.elements.internal import Plain
from graia.application.friend import Friend
loop = asyncio.get_event_loop()
bcc = Broadcast(loop=loop) app = GraiaMiraiApplication( broadcast=bcc, connect_info=Session( host=“http://localhost:8080 ↗”, # 填入 httpapi 服务运行的地址 authKey=“graia-mirai-api-http-authkey”, # 填入 authKey account=5234120587, # 你的机器人的 qq 号 websocket=True # Graia 已经可以根据所配置的消息接收的方式来保证消息接收部分的正常运作. ) )
@bcc.receiver(“FriendMessage”)
async def friend_message_listener(app: GraiaMiraiApplication, friend: Friend):
await app.sendFriendMessage(friend, MessageChain.create([
Plain(“Hello, World!”)
]))
app.launch_blocking()
{% endcodeblock %}
{% note info simple %}上述代码实现功能为:当接收到好友消息时,回复“Hello,World!”{% endnote %}
{% note info simple %}其中authKey注意带引号。{% endnote %}
运行MCL并登录指定QQ号,运行bot.py即可开始食用。
待完善
{% endtabs %}
相关日志#
{% timeline 时间线 %}
- 发布。
- 完善内容。
- 完善内容。
{% endtimeline %}