AzideCupric 4e304a43b1
通过 nb-cli 实现数据库一键导入导出 (#210)
* feat: 实现导出存储的订阅信息的功能

* test: 编写导出功能测试

* test: 使用tmp_path

* feat: 实现导入订阅文件功能

* refactor: 将订阅导入导出部分独立出来

* fix: 修复一些拼写错误
test: 完成import的第一个测试

* feat: 将订阅导入导出函数加入nb script

test: 添加cli测试

* test: 完善subs import测试

* 🐛 fix nb cli entrypoint name error

* fix: 修改错误的entry_point, 关闭yaml导出时对键名的排序

* fix: 使用更简短的命令名

* 🚚 将subs_io迁移到config下

* ♻️ 不再使用抛出异常的方式创建目录

* refactor: 将subscribe_export类转为函数

* refactor: 将subscribe_import类转为函数

* refactor: 根据重写的subs_io重新调整cli

* test: 调整重写subs_io后的test

* chore: 清理未使用的import内容

* feat(cli): 将--yaml更改为--format

* test: 调整测试

* fix(cli): 为import添加不支持格式的报错

*  improve export performace

* feat: subscribes_import函数不再需要传入参数函数,而是指定为add_subscribes

fix: nbesf_parser在传入str时将调用parse_raw, 否则调用parse_obj

* feat: subscribes_import现在会根据nbesf_data的版本选择合适的导入方式

* fix(test): 调整测试

* feat: nb bison export命令不再将文件导出到data目录,而是当前工作目录

* docs: 增添相关文档

* fix(test): 修复错误的变量名

---------

Co-authored-by: felinae98 <731499577@qq.com>
2023-03-19 16:29:05 +08:00
2022-03-31 12:44:51 +08:00
2023-03-12 20:04:19 +08:00
2023-03-12 20:04:19 +08:00
2022-06-12 15:32:13 +08:00
2022-05-16 17:24:40 +08:00
2023-03-09 17:32:51 +08:00
2023-03-09 09:33:35 +00:00
2021-02-24 20:57:07 +08:00
2023-01-06 16:05:16 +08:00
2023-01-06 16:05:16 +08:00
2023-01-06 16:05:16 +08:00

Bison
通用订阅推送插件

pypi license action docker codecov qq group

文档|开发文档

简介

一款自动爬取各种站点,社交平台更新动态,并将信息推送到 QQ 的机器人。 基于 NoneBot2 开发(诞生于明日方舟的蹲饼活动)

本项目原名原名nonebot-hk-reporter

寓意本 Bot 要做全世界跑的最快的搬运机器人,后因名字过于暴力改名

本项目名称来源于明日方舟角色拜松——一名龙门的信使,曾经骑自行车追上骑摩托车的德克萨斯

支持的平台:

  • 微博
  • Bilibili
  • Bilibili 直播
  • RSS
  • 明日方舟
  • 网易云音乐
  • FF14
  • mcbbs 幻翼块讯

功能

  • 定时爬取指定网站
  • 通过图片发送文本,防止风控
  • 使用队列限制发送频率
  • 使用网页后台管理 Bot 订阅
  • 使用可以设置权重的调度器按时间调节不同账号的权重

使用方法

!!注意,如果要使用后台管理功能请使用 pypi 版本或者 docker 版本,如果直接 clone 源代码 需要按下面方式进行 build

cd ./admin-frontend
pnpm && pnpm run build

可以使用 Dockerdocker-compose作为插件安装在 nonebot 中,或者直接运行

在群里 at Bot 或者直接私聊 Bot “添加订阅”,按照提示输入需要订阅的账号,就可以愉快接收消息了。

参考文档

FAQ

  1. 报错TypeError: 'type' object is not subscriptable
    本项目使用了 Python 3.10 的语法,请将 Python 版本升级到 3.10 及以上,推荐使用 docker 部署
  2. bot 不理我
    请确认自己是群主或者管理员,并且检查COMMAND_START环境变量是否设为[""] 或者按照COMMAND_START中的设置添加命令前缀,例: COMMAND_START=["/"]则应发送/添加订阅
  3. 微博漏订阅了 微博更新了新的风控措施,某些含有某些关键词的微博会获取不到。
  4. 无法使用后台管理页面
    1. 确认自己正确配置了 nonebot 的端口,如果在远程或容器外访问网页请确保HOST=0.0.0.0
    2. 确认自己的云服务器的防火墙配置正确
    3. 确认自己使用了正确的方法安装插件

参与开发

欢迎各种 PR参与开发本插件很简单只需要对相应平台完成几个接口的编写就行。你只需要一点简单的爬虫知识就行。

如果对整体框架有任何意见或者建议,欢迎 issue。

鸣谢

License

MIT

Description
No description provided
Readme MIT 12 MiB
Languages
Python 90%
TypeScript 7.8%
CSS 0.7%
Jinja 0.6%
Dockerfile 0.6%
Other 0.3%