Skip to main content

Nonebot2 插件,基于mediawiki api搜索条目

Project description

nb2-wiki

OSCS Status wakatime

基于wikipedia,适用于 Nonebot2 的 mediawiki搜索 插件,同时你的Nonebot版本应不低于Nonebot2.0b1。

关于

本项目作为AXbot/mws.py的重构nonebot2适配版,代码逻辑已然完全不同,并且功能得到了更大的拓展,但仍旨在能于即时通讯平台中快速引用wiki条目,让由各大wiki中所整合的知识为更多人所用。

该项目目前仍属于较高频率代码变更状态,未发布正式版,可能并不合适立即投入生产环境,请务必于测试环境中进行调试后再投入生产环境。

安装

克隆此仓库至nonebot生成的目录中对应的存放插件的文件夹内。

git clone https://github.com/ZombieFly/nb2-wiki.git

配置

可配置项存放于config.py内,可按需求更改 ,或是直接于__init__.py内声明全局变量(现仅从nb获得配置)

  • PROXIES(dict):代理地址,默认值为{},当所使用的MWiki的need_proxyTrue时使用;

  • REFER_MAX(int):相关搜索结果最大返回值,默认值为10

  • RETRY_TIMES(int):api返回错误时最大重试次数,默认值为1

  • RAW_MWIKI(MWiki): 默认MWiki对象,在直接使用/wiki <关键词>命令时会使用此wiki记录;

  • CMD_START(list):命令触发头,默认值为['wiki', '维基']

使用

以下命令实例中,假定bot配置的命令头为./,请依据实际情况替换。

  • /wiki <关键词>

通过raw_MWiki发起搜索,一个可用实例:

/wiki 绵羊
  • /wiki.add <自定义wiki简称> <wiki地址> <-d/D (可选)>
    • 其中,wiki地址应为/api.php/index.php?curid=前部分,链接开头的http协议可省略,(如minecraft.fandom.com/zh/)。当需要使用的api与curid链接前部分不相同时,可在记录后,使用set子命令进行修改;
    • 此外,命令中两处的/.可替换为任一被定义的命令头,例如在本文档假设的环境中,.wiki/add/wiki/add等的皆可触发此子命令,下文将不再赘述此特征;
    • 末尾可选参数 -D-d,添加后,将跳过wiki api可用性检查,直接记录wiki。
    • 一个可用的实例:
      .wiki.add mc minecraft.fandom.com/zh/ -D
      
  • .wiki.set <已记录wiki名> <属性> <值>

    修改已记录的wiki的对应属性,属性应该为 nameapi_urlcurid_url 等的MWiki属性,<值>为所需要更改后的值。

  • .wiki.rm <已记录wiki名>

    从本群记录中移除指定已记录wiki。

  • .wiki.<已记录wiki名> <关键词>

    指定使用一个已记录的wiki发起搜索。一个可能的实例:

    .wiki.moe 别当欧尼酱了
    
  • .wiki.ls

    列出本群所有已记录wiki。

  • .wiki.lsl <已记录wiki名>

    以json形式返回目标已记录wiki的完全记录内容,当不追加参数指定wiki时将返回配置文件中的RAW_MWIKI

待办

  • add子命令判断wiki api是否可用,以及是否可直接生成简介
  • 默认UA储存问题
  • bilibili wiki适配器
  • add子命令添加的wiki名称已被使用,阻止注册
  • rm子命令删除时无论是否存在目标wiki都是返回“删除成功”,应当增加wiki存在性判定
  • 优化搜索流程,减少请求数,亦或是提高网络I/O利用率
  • 优化api检查机制

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot-plugin-wiki-0.0.2.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

nonebot_plugin_wiki-0.0.2-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file nonebot-plugin-wiki-0.0.2.tar.gz.

File metadata

  • Download URL: nonebot-plugin-wiki-0.0.2.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for nonebot-plugin-wiki-0.0.2.tar.gz
Algorithm Hash digest
SHA256 3b634312222c4b387bfeca188c0daefbaf2777c7446ec6959402485cf046ae90
MD5 29ea83726edb8500bc4888a16e0b1cbd
BLAKE2b-256 9b33dbd45433da14f1d39885dab638c155fed97934a623909759561f704ba9ea

See more details on using hashes here.

File details

Details for the file nonebot_plugin_wiki-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_wiki-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 21c50420e17da49c2aadf2dad01ae029981546f040f75a1fd460884ea9bb1173
MD5 7106cc504fd6692150d3e6729ed5b5c5
BLAKE2b-256 790095c891d1be00c42d4bbd1db06e2fadcee78a902f02f2ba26decbf03ad61d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page