Skip to main content

一个支持图片翻译的nonebot2插件

Project description

NoneBotPluginLogo

NoneBotPluginText

nonebot-plugin-pictranslator

✨ NoneBot 翻译插件 ✨

license pypi python

📖 介绍

一个基于Nonebot2的插件,提供多个api的文本及图片翻译功能,附带中英词典和ocr功能。

支持的API

一般来说只要百度API就够用了,如果想同时返回多个API的结果,可以在配置中填入多个api并将对应TRANSLATE_MODE该为all

API 图片翻译 文本翻译 语种识别 ocr 词典
有道
百度翻译开放平台
百度智能云 🚧
腾讯
天聚数行

有道整体来说质量最好,但免费额度只一次性发放
百度智能云翻译相关资源为一次性发放,OCR为每月刷新,词典不提供免费资源,创建应用时注意把OCR和机器翻译一同勾上
百度翻译开放平台和腾讯的免费额度均每月刷新
腾讯图片翻译不返回渲染后图片,为插件本地渲染,同时只能横向分行识别,质量较差
天聚数行只提供词典功能

💿 安装

使用 nb-cli 安装 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装
nb plugin install nonebot-plugin-pictranslator
使用包管理器安装 在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令
pip
pip install nonebot-plugin-pictranslator
pdm
pdm add nonebot-plugin-pictranslator
poetry
poetry add nonebot-plugin-pictranslator
uv
uv add nonebot-plugin-pictranslator
conda
conda install nonebot-plugin-pictranslator

打开 nonebot2 项目根目录下的 pyproject.toml 文件, 在 [tool.nonebot] 部分追加写入

plugins = ["nonebot_plugin_pictranslator"]

🎉 使用

需至少配置一个api才能使用
要自动识别语种,需要配置腾讯或百度api
详见配置

指令表

所有指令默认使用nonebotCOMMAND_START配置项作为起始字符,可在配置中修改

指令 权限 需要@ 范围 说明
词典/查词 <单词> 群员 群聊 查询单词释义
(图片)翻译/<语言>译<语言> 群员 群聊 核心翻译功能,使用<语言>译<语言>来指定源语言和目标语言,可回复触发
ocr 群员 群聊 进行图片文字提取,可回复触发

示例

以下指令均默认使用/作为起始字符

  • 词典功能 需配置天行api
    /词典 hello
    

以下指令均可回复触发,或是先只发指令后发送内容

  • 文本翻译功能
    /翻译 你好
    /中译英 你好
    
  • 图片翻译功能
    /翻译 [图片]
    /中译英 [图片]
    
  • ocr功能 需配置腾讯api
    /ocr [图片]
    

⚙️ 配置

在 nonebot2 项目的.env文件中视情况添加

配置项 必填 默认值 可填值 说明
PICTRANSLATE_COMMAND_START nonebot自身的COMMAND_START Array[str] 配置命令的起始字符,默认使用nonebot自身的COMMAND_START
OCR_USE_IMAGE_URL false bool 是否允许在调用ocr api时传递图片url而不是图片本身,可能会有一些未知问题
TEXT_TRANSLATE_APIS ['tencent', 'baidu', 'youdao'] Array['tencent', 'baidu', 'youdao', 'baidu_cloud'] 启用哪些API,并以什么优先级调用进行文本翻译
IMAGE_TRANSLATE_APIS ['baidu', 'tencent'] 同上 图片翻译API选择,同上
OCR_APIS ['baidu_cloud', 'tencent'] Array['baidu_cloud', 'tencent'] ocrAPI选择,同上
TEXT_TRANSLATE_MODE 'auto' 'auto', 'random', 'all' 文本翻译模式,auto代表依优先级调用第一个可用API,random为随机选用一个,all代表调用全部可用api
IMAGE_TRANSLATE_MODE 同上 同上 图片翻译模式,同上
OCR_MODE 同上 同上 ocr模式,同上
腾讯API相关 / / / 详见腾讯文档
TENCENT_ID 若使用则必填 String 腾讯API的secret_id
TENCENT_KEY 若使用则必填 String 腾讯API的secret_key
USE_TENCENT / Bool 是否启用腾讯API,填写了上两项则默认启用
TENCENT_PROJECT_ID 0 Int 腾讯API的project_id
TENCENT_API_REGION ap-shanghai String 腾讯API的region参数
有道API相关 / / / 详见有道文档
YOUDAO_ID 若使用则必填 String 有道翻译API的应用ID
YOUDAO_KEY 若使用则必填 String 有道翻译API的应用密钥
USE_YOUDAO / Bool 是否启用有道翻译API,填写了上两项则默认启用
百度API相关 / / / 详见百度文档
BAIDU_ID 若使用则必填 String 百度翻译开放平台的APP ID
BAIDU_KEY 若使用则必填 String 百度翻译开放平台的密钥
USE_BAIDU / Bool 是否启用百度翻译API,填写了上两项则默认启用
百度API相关 / / / 详见百度智能云文档
BAIDU_CLOUD_ID 若使用则必填 String 百度智能云的应用API KEY
BAIDU_CLOUD_KEY 若使用则必填 String 百度智能云的应用Secret KEY
USE_BAIDU_CLOUD / Bool 是否启用百度智能云API,填写了上两项则默认启用
TIANAPI_KEY 若使用则必填 String 天聚数行APIkey,用于中英词典查询

📜 TODOs

  • ocr实现指定目标语言
  • 在命令中指定所使用的api
  • 实现auto模式下一个接口资源使用完后自动切换到下一个

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_pictranslator-1.0.9.tar.gz (23.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nonebot_plugin_pictranslator-1.0.9-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_pictranslator-1.0.9.tar.gz.

File metadata

File hashes

Hashes for nonebot_plugin_pictranslator-1.0.9.tar.gz
Algorithm Hash digest
SHA256 27a4cc87eee795e1f9eb939583de5aecf49093afb3d558351aed2f7507fcc43e
MD5 3fcb704de5be532686cfaebd3db65942
BLAKE2b-256 5e2c1bf3d56228ae831ca5804ae1ec80d152d37e2cc29a26e2df03abb1dafb6b

See more details on using hashes here.

File details

Details for the file nonebot_plugin_pictranslator-1.0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_pictranslator-1.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 43d7cf341154d7491f577adba458af3bcc7489faa49d5feb839b64c6726a341f
MD5 574fd8afeb4774d37e8c9fb0278fc353
BLAKE2b-256 e2426eaee6f228bb7ca1734d989614c63e506076f5d44e6b6d8608e0630565f8

See more details on using hashes here.

Supported by

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