Skip to main content

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

Project description

nonebot-plugin-wiki

license pypi python wakatime

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

关于

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

  • 不止步于mediawiki api,本项目正在尝试兼容Bilibili wiki,目前对于 中文 Minecraft Wiki (Bilibili Wiki镜像站)的简介生成具有一定的支持度。

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

安装

通过pip安装

pip install nonebot_plugin_wiki

从github仓库安装

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

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

配置

本插件无需配置即可使用,同时亦可依照 nonebot 的 配置方法 对插件进行定制,以下配置项为可选配置:

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

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

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

  • RAW_MWIKI: 默认MWiki对象,在直接使用/wiki <关键词>命令时会使用此wiki记录,默认值为 {"name": "mc","api_url": "https://minecraft.fandom.com/zh/api.php","curid_url": "https://minecraft.fandom.com/zh/index.php?curid=","user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit 537.36 (KHTML, like Gecko) Chrome/102.0.5005.63 Safari/537.36","need_proxy": false}

  • CMD_START:命令触发头,默认值为["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 minecraft wiki适配器
  • add子命令添加的wiki名称已被使用,阻止注册
  • rm子命令删除时无论是否存在目标wiki都是返回“删除成功”,应当增加wiki存在性判定
  • 优化Biliwiki mc镜像简介生成结果
  • 兼容更多的Bilibili Wiki
  • 搜索时返回内容不是合规的json时的异常处理
  • 优化搜索流程,减少请求数,亦或是提高网络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.4.tar.gz (22.9 kB view details)

Uploaded Source

Built Distribution

nonebot_plugin_wiki-0.0.4-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nonebot-plugin-wiki-0.0.4.tar.gz
  • Upload date:
  • Size: 22.9 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.4.tar.gz
Algorithm Hash digest
SHA256 6697da45830dac4631e35aa1e3c4736e61bd7b3a11c0c244c522961df2980527
MD5 340be7867b0eb42e401ac5467b246639
BLAKE2b-256 ab3137816cf3463a9e2e047068f333e00fb890668d9c2a52136e328c5b8f5012

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nonebot_plugin_wiki-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0aee337d729b5e045af058f820e9060d0cacbf56870fdcf014ca1324218dd8c9
MD5 7fda683f9f892048dadbcbde9aa8fa3c
BLAKE2b-256 5ac2250164c991e0b8f4b3065d1a7c6a1e8b0a327445da31b0881d4488b89263

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