zhenxun_bot icon indicating copy to clipboard operation
zhenxun_bot copied to clipboard

关于搜图、真寻、Bot的一切

Open mnixry opened this issue 2 years ago • 39 comments

自我介绍

我是真寻依赖的Bot开发框架NoneBot2的主要开发者之一,主要负责社区工作。真寻一直以来是NoneBot2社区的一款非常优秀的Bot项目,这次真寻能够受到来自广大开发者和用户的关注令我们受宠若惊。


Q&A

Q: 我从各种渠道听说这个Bot有搜图功能,请问它是怎么实现的? A: 事实上不是我们实现的,我们只是负责调用SauceNAO提供的API并进行处理返回的数据。如果您觉得这个功能很好,欢迎给SauceNAO的开发者进行捐赠。同时,有很多的动漫图片搜索站点,也有很多在各个方面搜索功能非常优秀的站点,比如ascii2d、IqDB以及~~众所周知的~~E-Hentai

Q: 我该怎么部署这个Bot? A: 看文档,如果按照文档指示仍然无从下手,那您可能需要先学习一些计算机基础知识

Q: 为什么删库? A: 事实上,能够在QQ聊天平台上运作的非官方Bot,从严格意义上来讲都违反腾讯的用户条款(甚至有违反刑法第二百八十六条的风险)。同时作为关注焦点的搜图功能,在运作时可能会不可避免的接触一些大陆所不允许的限制级别内容,这也是某种程度上的风险。 而且从事实上来说,代码并没有删除。 条条大路通罗马,在你现在看到的GitHub这个平台上你就有很多种方法接触到新鲜的代码。同时我们恳请大家如果遇到有人试图以有偿形式部署或者销售真寻,请不要理睬。

Q: 我是否可以修改真寻的源代码? A: 可以,但是它使用AGPL-3.0开源许可,这意味着你任何的修改都必须以同许可开源。同时,任何一位开发者,包括我们,都不会对代码运行造成的任何问题和损失提供担保。 这是开源精神的核心,希望大家能够共同遵守以打造一个更好的社区环境。

一个关于Bot的故事

程序员是一个非常讨厌重复化工作的群体。既然我们有聊天软件,那我们一定有能够自动化聊天软件行为的方法。 于是,各种的无头Bot客户端就诞生了,因为它是自动化由程序操作的,所以我们称它作无头(headless)

在很久以前,有个人开发了一款叫做“酷Q”的无头Bot客户端,它能够和QQ进行通信。 酷Q由易语言开发,并不开源,并且仅限Windows平台运行(事实上Linux可以通过Docker镜像套wine运行,但是非常的冗杂和麻烦)。如果需要发送图片等高级功能,还需要付费。 但是,因为酷Q优秀的插件系统设计,和大家共有的需求,酷Q的生态变得庞大。其中,包括一款叫做CQHTTP的插件。它提供了跨语言、跨进程、甚至跨机器的调用可能性。由于它的诞生,NoneBot等框架也相继诞生,酷Q社区一时变得无比火热。

但是,就和大家想的那样,一个故事,最终会有它的尾声。一款好的工具,它一定会是一把双刃剑。 通过编程式的操作聊天账号,同时给了非法用途以机会。在社区的蓬勃发展背后,黑色的影子也跟着膨胀。同样是一款无头Bot框架,叫做晨风,它的开发者被腾讯起诉,遭到了牢狱之灾。Bot开发界风声鹤唳,不断有框架停止或者退出开发。

最终,在2020年的八月一日,酷Q和我们说了再见。 在它的官网上,留下了这样一段话:

愿我们在更加开放的平行世界再次相遇。

然而。故事到这里还没有结束。如果故事结束了的话,我们就不会在这里相见了。

开源的星星之火终将燎原。 在酷Q发展的背后,由于它封闭付费,也有很多大佬在开发开源方案,包括mamoe/mirai、以及大家都知道的go-cqhttp。有了他们的不懈努力,我们现在能够不费吹灰之力,在几乎任何一台设备上运行一款开源自由的无头客户端。

同时,我们在这样一次波动之后,意识到依赖单一平台的Bot是狭隘的,我们能不能,推出一款跨越聊天软件之间鸿沟,和无头实现通信的机制? 答案是可以的。在通信协议上,CQHTTP从酷Q的躯壳中涅槃重生,变成了和某个具体无头实现无关的统一通信协议:OneBot。在框架上,你们现在看到的NoneBot2,以及Avilla、Koishi.js、OilvOS、WeChaty这些其他框架,都在努力以自己的方式做出尝试。

这个故事,最终会走向何处?它的命运,将交给你们。

mnixry avatar May 17 '22 13:05 mnixry

很好置顶解释,我的牛牛变的困难。

MuelNova avatar May 17 '22 13:05 MuelNova

this should be pinned

Kotoki1337 avatar May 17 '22 13:05 Kotoki1337

正确的,中肯的,富有预见性的

DaiShengSheng avatar May 17 '22 13:05 DaiShengSheng

支持,同时希望凑热闹的各位在部署使用bot的时候一定要谨记开源准则。要注意不违反相关法律,涩涩虽好,但不要贪多哦。 另外希望各位在部署bot时学习提问的智慧

PoeraWork avatar May 17 '22 13:05 PoeraWork

部署真寻前你需要做的 1、一台长期运行的电脑or服务器 2、能够阅读文档的能力,需要一点基础知识,这将决定你能不能正确部署 3、如果你想使用搜图or搜xx功能,可能会需要使用魔法(× 4、、、、、

Qiuyebai-1226 avatar May 17 '22 13:05 Qiuyebai-1226

我们真诚的欢迎因这次偶然的热度而发现真寻以及Nonebot2等其他相关项目的开发者 / 使用者。

如果我们的项目能够帮助你完成一些工作,收获一份快乐,这对于开源社区的我们来说都是莫大的鼓励。

同时,我们也希望各位有能之士能够为项目的构建添砖加瓦,因为有了你们,真寻和NB2以及整个开源社区才能变得更加美好。

MuelNova avatar May 17 '22 13:05 MuelNova

友善的,可靠的,删库跑路的

MueoMo avatar May 17 '22 13:05 MueoMo

把 关于Bot的故事 这一节写完了

大概梳理了以下Bot发展到现在我所知道的历史,欢迎大家批评斧正。

mnixry avatar May 17 '22 13:05 mnixry

开源精神需要我们一同维护

简单说一下我玩 bot 的故事吧


2020年

我接触了酷Q框架(其实并不是接触,无非是管理服务器的时候发现的),但是我并未接触很久,8月2日,酷Q框架暴死

image

后来我并未接触机器人,到了21年初

2021年

我接触了 mirai,试着写了一个简单的 mc 在线获取(其实是 python 结合体,python 获取数据,插件读取文件),但是 mirai 我也就止步于此了(因为不会)

5月,我在一个原神群看到了 PaimonBot 使用了 nonebot2,我才发现原来 python 也可以写机器人(这时我还是菜鸡,异步根本不会),但随着学业繁忙以及对机器人提不起兴趣,我在6月以后就没有碰过机器人了

2022 年

1月,我重新拾起了 QQ 机器人的兴趣,开始协助编写(例如 GenshinUID 等)插件,后来逐渐深入。2月开始研究 nonebot2 单元测试,但这时我碰壁了,时常遇到错误,于是我短期放弃后,于4月重新研究,总结经验后编写了文档,这也算是我经验成长的一部分吧

后来我开始接触 QQ 协议库 CAI ,开始尝试编写 go-cqhttp 这样的 OneBot 实现,我的技术也在逐渐提高,也遇到了很多有趣的开发者,比如 @yanyongyu ,为我研究 nonebot 和 CAI 予以了协助,在此一并感谢

关于这个事件,我的看法

早上聊天记录出现的时候,群里的大佬指出是搜图插件,但是到了中午,插件的来源 真寻 被发掘出来,6个小时涨了 600+ star

群里的人都震惊了

但是我并不认为这是好事,这可能会招来无辜谩骂甚至阴谋论

image

正如 @mnixry 所说,QQ 机器人本身就所处违法边缘,我也不想让酷Q的悲剧重演

所以真寻 润了

我的评价就这些


开源的关键在于“开放源代码”(open source),而不只是“公开源代码”(public source)。“开放”的意思是说,首先,社区是开放的,任何人都可以参与到社区里来,开发各式各样的周边项目,其次,这些项目本身也是开放的,从项目的一开始就以开源的方式进行,作者在 GitHub 上公开 push 代码,同时也随时可接受别人的 pull request。

所有项目的开发者,都是自发地来参与开发,而不是为了钱或是被迫的。每个人都是出于自身的兴趣,选择从头开发或者参与社区中的已有项目,没有人需要被安排“你这周做什么,下个月做什么”,也没有人期待从项目中获得金钱收益。大家主动从社区中发现需要修复的 bug、需要补充的功能,而不是被动地做自己不愿意做的事。

—— richardchien (https://stdrc.cc/post/2021/12/19/about-open-source)

MingxuanGame avatar May 17 '22 13:05 MingxuanGame

开源精神需要我们一同维护

简单说一下我玩 bot 的故事吧

2020年

我接触了酷Q框架(其实并不是接触,无非是管理服务器的时候发现的),但是我并未接触很久,8月2日,酷Q框架暴死

image

后来我并未接触机器人,到了21年初

2021年

我接触了 mirai,试着写了一个简单的 mc 在线获取(其实是 python 结合体,python 获取数据,插件读取文件),但是 mirai 我也就止步于此了(因为不会)

5月,我在一个原神群看到了 PaimonBot 使用了 nonebot2,我才发现原来 python 也可以写机器人(这时我还是菜鸡,异步根本不会),但随着学业繁忙以及兴趣,我在6月以后就没有碰过机器人了

2022 年

1月,我重新拾起了 QQ 机器人的兴趣,开始协助编写(例如 GenshinUID)后来逐渐深入。2月开始研究 nonebot2 单元测试,但这时我碰壁了,时常遇到错误,于是我短期放弃后,与4月重新研究,总结经验后编写了文档,这也算是我经验成长的一部分吧

后来我开始接触 QQ 协议库 CAI ,开始尝试编写 go-cqhttp 这样的 OneBot 实现,我的技术也在逐渐提高,也遇到了很多有趣的开发者,比如 @yanyongyu ,为我研究 nonebot 和 CAI 予以了协助,在此一并感谢

关于这个事件,我的看法

早上聊天记录出现的时候,群里的大佬指出是搜图插件,但是到了中午,插件的来源 真寻 被发掘出来,6个小时涨了 600+ star

群里的人都震惊了

但是我并不认为这是好事,这可能会招来无辜谩骂甚至阴谋论

image

正如 @mnixry 所说,QQ 机器人本身就所处违法边缘,我也不想让酷Q的悲剧重演

所以真寻 润了

我的评价就这些

Tashikani, gocq pure pure is on the edge of send.

lhhxxxxx avatar May 17 '22 13:05 lhhxxxxx

呜呜呜,还是来晚了啊

180652157 avatar May 17 '22 14:05 180652157

这个网站怎么改头像啊

180652157 avatar May 17 '22 14:05 180652157

真的run到金三角了吗

Nanosk07 avatar May 17 '22 14:05 Nanosk07

我不到啊

------------------ 原始邮件 ------------------ 发件人: "HibiKier/zhenxun_bot" @.>; 发送时间: 2022年5月17日(星期二) 晚上10:08 @.>; @.@.>; 主题: Re: [HibiKier/zhenxun_bot] 关于搜图、真寻、Bot的一切 (Issue #190)

真的run到金三角了吗

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

180652157 avatar May 17 '22 14:05 180652157

啊啊啊 嗯嗯嗯 阿阿阿阿阿阿

yzyyz1387 avatar May 17 '22 14:05 yzyyz1387

一键部署的没有用该怎么办?

Wecvcd avatar May 17 '22 14:05 Wecvcd

呜呜呜,还是来晚了啊

看看main分支 东西还在的

Nanosk07 avatar May 17 '22 14:05 Nanosk07

没有什么恶意,但是酷Q好像是易语言...

MTmin avatar May 17 '22 14:05 MTmin

好耶 mix贴贴

bakashigure avatar May 17 '22 14:05 bakashigure

无意义的留言请不要在此评论

这会给关系这个 issue 的所有人发送邮件

很显然,这是垃圾邮件,因为并未对本 issue 有积极意义

MingxuanGame avatar May 17 '22 14:05 MingxuanGame

请问部署完成了但是插件比如搜图,搜番插件调用异常,现在还能使用嘛

SSSpuerGirl avatar May 17 '22 14:05 SSSpuerGirl

在「酷 Q」出现之前,其实还有 pandolia/qqbot 这种基于 WebQQ 协议的机器人,可惜后来腾讯直接关闭了 SmartQQ。

当然,这与 OneBot 无关,但至少是 QQ 机器人更早的一段历史。

j1g5awi avatar May 17 '22 14:05 j1g5awi

没有什么恶意,但是酷Q好像是易语言...

似乎有过一段时间是易,但是我开始接触的时候就是C++了。 它能够使用易语言开发插件也是它能得到庞大社区的原因之一

mnixry avatar May 17 '22 14:05 mnixry

当今天真寻bot火起来的时候,我还在一脸懵逼的状态下,随后才了解到,火起来的原因是可以搜色图。(其实很多机器人也有这个功能)大量的用户涌入github希望可以下载真寻bot,仅仅是为了搜色图(连py都不会的也来了,什么鬼怪都有),要知道github开源的理由不是色图,是让你学习使用的。因色图而不是学习大量涌入的跟风反而会导致一些“阴谋论”的出现 168824174-0c740273-cac6-4645-938d-f691023032eb 这可不是什么好事情,前几年火爆的酷q现在已经只剩下灰了,跟风的行为反倒会加速这个过程(和@mnixry 说的一样,QQ机器人本身就在违法边缘)希望现在新来的要明白一个道理:牢记开源精神,你是为了学习技术而来,而不是为了几张色图。要色图去那些网站岂不是更舒服?也希望这次事件能够平平安安的过去,我们也能写出更实用的程序喵~

PadorFelice avatar May 17 '22 15:05 PadorFelice

好家伙,作为同行慕名而来 起初我还奇怪为什么突然几十个群at我叫我加功能 我当时还很生气,就一普通搜图,好早之前就有 (最近号又被封了,可能是这个太火了) 希望大佬能继续产出更好的代码 一起交流学习

SonderXiaoming avatar May 17 '22 15:05 SonderXiaoming

膜下mix佬(跑)

Fjaxzhy avatar May 17 '22 15:05 Fjaxzhy

ijovi23 avatar May 17 '22 16:05 ijovi23

正确的

shiodd avatar May 18 '22 01:05 shiodd

我已经学废怎么部署go-cqhttp并在ubuntu下解决QQ扫码登录时提示登录环境异常无法登录的问题,结果你却跑路啦啦啦啦啦啦

CelicaEX avatar May 18 '22 02:05 CelicaEX

很幸运被群友艾特认识了真寻,也很快在服务器上部署了真寻,接下来会阅读开发文档,了解统一插件标准,默默为真寻努力,加油,bot社区的变好需要在座的每一个人付出努力

h265642327 avatar May 18 '22 05:05 h265642327