JavBus 插件
JavBus 插件:在群聊中快速查询番号与磁链
对接 JavBus API,支持番号查询、关键词搜索、最新影片获取,让你的机器人成为实用的 NSFW 工具。
作者: 蜥蜴
背景
作为一个混迹于多个二次元社群的机器人维护者,我发现群友经常需要查询番号信息,或者寻找特定女优的作品。传统的做法是:
- 打开浏览器访问 JavBus 网站
- 在搜索框中输入番号
- 手动复制磁力链接
- 再截图封面图发到群里
这个过程繁琐且低效,尤其是在手机上操作更麻烦。于是我就想:能不能让机器人在群聊中直接完成这些操作?
用户只需要发一条消息,机器人就能自动查询并返回影片详情、磁力链接、封面图和预览截图。
工具定位
koishi-plugin-javbus-lizard 是一款基于 Koishi 框架的 NSFW 查询插件,核心功能是:
- 番号搜索:通过番号查询影片的完整信息
- 关键词搜索:按女优名或关键词搜索影片列表
- 最新影片:获取最新上架的有码和无码影片
- 磁链管理:支持磁力链接排序和数量限制
- 图片预览:返回封面图和预览截图
⚠️ 免责声明:本插件仅用于学习和研究目的,请勿配置于 QQ 或其他国内社交平台,后果自负。
快速开始
1. 部署后端 API
本插件依赖 javbus-api 作为后端服务,首先需要进行部署:
1 | # 克隆项目 |
服务默认运行在 http://localhost:3000。
2. 安装插件
1 | npm install koishi-plugin-javbus-lizard |
或者在 Koishi 控制台的插件市场搜索 javbus-lizard 安装。
3. 配置插件
1 | plugins: |
完成!现在可以在群聊中使用指令了。
指令一览
| 指令 | 说明 | 示例 |
|---|---|---|
jav <番号> |
查询番号详情 | jav ABP-123 |
jkw <关键词> |
关键词搜索 | jkw 高桥しょう子 |
jew [无码] |
最新影片 | jew 或 jew 无码 |
使用场景
场景一:快速查番
群友分享了一个番号,想看看是什么内容:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 群友A: 有人看过 ABP-123 吗?
你: jav ABP-123
机器人: 标题:ABP-123 ドキドキ初体験
发行日期:2024-01-15
影片时长:120分钟
女优:高桥しょう子
磁链[1]大小:2.5GB
magnet:?xt=urn:btih:...
磁链[2]大小:1.8GB(中文字幕)
magnet:?xt=urn:btih:...
[封面图]
[预览图1][预览图2][预览图3]
场景二:按女优搜索
想找某个女优的作品:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 你: jkw 三上悠亚
机器人: 找到 3 部影片
标题:SSIS-001 三上悠亚 〇〇
发行日期:2024-02-01
标签:高清, 独占
番号:SSIS-001
[封面图]
标题:SSIS-002 三上悠亚 △△
发行日期:2024-03-01
标签:4K, 中文字幕
番号:SSIS-002
[封面图]
场景三:每日追新
每天查看最新上架的影片:
1
2
3
4
5
6
7
8
9
10 你: jew
机器人: 最新有码影片:
标题:XYZ-001 〇〇〇
发行日期:2024-03-15
标签:4K, 独占
番号:XYZ-001
[封面图]
...
技术实现
整体架构
1 | 用户 → 聊天平台 → Koishi 机器人 → javbus-lizard 插件 → javbus-api → JavBus 网站 |
核心流程
番号搜索(jav 指令)
1 | 用户输入 jav ABP-123 |
关键词搜索(jkw 指令)
1 | 用户输入 jkw 高桥しょう子 |
API 端点
| 端点 | 方法 | 说明 |
|---|---|---|
/api/movies/{id} |
GET | 获取影片详情 |
/api/magnets/{id}?gid={gid}&uc={uc} |
GET | 获取磁力链接列表 |
/api/movies |
GET | 获取最新有码影片 |
/api/movies?type=uncensored |
GET | 获取最新无码影片 |
/api/movies?magnet=all |
GET | 获取最新有码影片(含未发行) |
/api/movies/search?keyword={keyword} |
GET | 关键词搜索 |
/api/movies/search?keyword={keyword}&magnet=all |
GET | 关键词搜索(含未发行) |
磁链排序算法
1 | // 排序逻辑 |
配置详解
基础配置
| 配置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
api |
string |
必填 | API 地址,形如https://aaa.bbb.ccc |
count |
number |
5 |
每次搜索返回影片数量(1-30) |
ifPre |
boolean |
false |
是否包含未发行影片 |
ifForward |
boolean |
false |
合并转发(仅 onebot) |
debug |
boolean |
false |
调试日志 |
获取设置
| 配置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
cover |
boolean |
false |
返回封面图 |
preview |
boolean |
false |
返回预览截图 |
magnet |
boolean |
true |
返回磁力链接 |
磁链设置
| 配置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
magnetPriority |
string |
default |
排序方式:default / cn / size-asc / size-desc |
magnetCount |
number |
5 |
返回磁链数量(-1 为全部) |
使用技巧
1. 磁链排序
根据需求选择合适的排序方式:
1 | # 只想要中文字幕 |
2. 图片缓存
开启封面和预览后,图片会被缓存为 Base64 格式,加快后续查看速度。
3. 合并转发
在 onebot 平台上开启合并转发,可以将多个预览图合并为一条消息,避免刷屏:
1 | ifForward: true |
4. 调试模式
遇到问题时开启调试模式,查看详细的 API 请求日志:
1 | debug: true |
注意事项
1. 网络要求
API 服务需要能够正常访问 JavBus 网站。如果部署在国内服务器,可能需要配置代理。
2. 图片防盗链
JavBus 的图片服务器有防盗链机制,插件通过设置 referer 头来解决。
3. 请求频率
不要过于频繁地发送请求,以免对 API 服务造成压力。建议每次查询间隔至少 1 秒。
4. 平台限制
合并转发功能仅支持 onebot 平台,其他平台会自动降级为顺序发送。
5. 法律法规
请遵守当地法律法规,不要将本插件用于非法用途。不要在公共群聊中滥用。
常见问题
Q: 提示 Not Found?
A: 番号错误或影片暂未发行。可以尝试开启 ifPre: true 来查看未发行影片。
Q: 提示 fetch failed?
A: API 服务器网络波动,可能是 JavBus 暂时不可用,稍后重试。
Q: 图片加载不出来?
A: 可能是 JavBus 图片服务器限制了访问,多试几次即可。
Q: 合并转发没效果?
A: 确认你的平台是 onebot,并且 ifForward: true。其他平台会自动降级。
Q: 搜索不到结果?
A: 可能是关键词过于模糊,尝试更精确的关键词。也可以检查 API 是否正常运行。
Q: 磁链数量不对?
A: 检查 magnetCount 配置,设为 -1 获取全部磁链,设为具体数字限制数量。
开发计划
- 支持更多平台合并转发
- 添加影片收藏和订阅功能
- 支持自定义搜索过滤条件
- 优化图片缓存机制
- 支持多 API 负载均衡
- 添加数据统计功能
相关链接
🎉 请低调使用,后续会更新搭建 Koishi 机器人的教程,敬请期待!