一个支持图片翻译的nonebot2插件
Project description
📖 介绍
一个基于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
详见配置
指令表
所有指令默认使用nonebot的COMMAND_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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nonebot_plugin_pictranslator-1.0.9.tar.gz.
File metadata
- Download URL: nonebot_plugin_pictranslator-1.0.9.tar.gz
- Upload date:
- Size: 23.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27a4cc87eee795e1f9eb939583de5aecf49093afb3d558351aed2f7507fcc43e
|
|
| MD5 |
3fcb704de5be532686cfaebd3db65942
|
|
| BLAKE2b-256 |
5e2c1bf3d56228ae831ca5804ae1ec80d152d37e2cc29a26e2df03abb1dafb6b
|
File details
Details for the file nonebot_plugin_pictranslator-1.0.9-py3-none-any.whl.
File metadata
- Download URL: nonebot_plugin_pictranslator-1.0.9-py3-none-any.whl
- Upload date:
- Size: 29.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
43d7cf341154d7491f577adba458af3bcc7489faa49d5feb839b64c6726a341f
|
|
| MD5 |
574fd8afeb4774d37e8c9fb0278fc353
|
|
| BLAKE2b-256 |
e2426eaee6f228bb7ca1734d989614c63e506076f5d44e6b6d8608e0630565f8
|