本文代码运行环境:
windows10
python3.6
jupyter notebook
作者mlln.cn, 转载请注明出处!
简介
Googletrans是一个免费且无限使用的python库,封装了谷歌翻译的网页版。不过它使用Google Translate Ajax API来调用detect和translate之类的方法。
它有如下特征:
- 快速可靠 - 它使用translate.google.com使用的相同服务器
- 自动语言检测
- 批量翻译
- 可自定义的服务URL
- 连接池(使用requests.Session的优点)
- HTTP / 2支持
安装
安装方法很简单, 因为我在notebook中使用, 所以直接使用pip命令进行安装:
1 | !pip install googletrans -U |
输出(stream):
Looking in indexes: https://mirrors.ustc.edu.cn/pypi/web/simple
Collecting googletrans
Downloading https://mirrors.ustc.edu.cn/pypi/web/packages/49/0f/eac53560e99a6b1e3b3e18e8b98f0e0041bfc4f1ee1e1b74cdf5530786d0/googletrans-2.3.0.tar.gz
Requirement already satisfied: requests in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from googletrans) (2.18.4)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (3.0.4)
Requirement already satisfied: idna<2.7,>=2.5 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (2.6)
Requirement already satisfied: urllib3<1.23,>=1.21.1 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (1.22)
Requirement already satisfied: certifi>=2017.4.17 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (2018.4.16)
Building wheels for collected packages: googletrans
Running setup.py bdist_wheel for googletrans: started
Running setup.py bdist_wheel for googletrans: finished with status 'done'
Stored in directory: C:\Users\syd\AppData\Local\pip\Cache\wheels\ba\f2\11\84e336d798cae9a9ebdaa1fdca57460cb0e5c258555963b61c
Successfully built googletrans
Installing collected packages: googletrans
Successfully installed googletrans-2.3.0
Looking in indexes: https://mirrors.ustc.edu.cn/pypi/web/simple
Collecting googletrans
Downloading https://mirrors.ustc.edu.cn/pypi/web/packages/49/0f/eac53560e99a6b1e3b3e18e8b98f0e0041bfc4f1ee1e1b74cdf5530786d0/googletrans-2.3.0.tar.gz
Requirement already satisfied: requests in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from googletrans) (2.18.4)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (3.0.4)
Requirement already satisfied: idna<2.7,>=2.5 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (2.6)
Requirement already satisfied: urllib3<1.23,>=1.21.1 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (1.22)
Requirement already satisfied: certifi>=2017.4.17 in d:\mysites\deeplearning.ai-master\.env\lib\site-packages (from requests->googletrans) (2018.4.16)
Building wheels for collected packages: googletrans
Running setup.py bdist_wheel for googletrans: started
Running setup.py bdist_wheel for googletrans: finished with status 'done'
Stored in directory: C:\Users\syd\AppData\Local\pip\Cache\wheels\ba\f2\11\84e336d798cae9a9ebdaa1fdca57460cb0e5c258555963b61c
Successfully built googletrans
Installing collected packages: googletrans
Successfully installed googletrans-2.3.0
输出(stream):
You are using pip version 18.0, however version 18.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
You are using pip version 18.0, however version 18.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
代码测试
1 | #### 引入用到的模块 |
1 | # 实例化一个Translator |
输出(plain):
- 指定翻译的目标语言
1 | translator.translate('你好, 世界!', dest='en') |
输出(plain):
- 指定来源语言
1 | translator.translate('你好, 世界!', src='zh-cn') |
输出(plain):
- 指定使用的api地址
1 | translator = Translator(service_urls=[ |
- 一次翻译多个语句
1 | translations = translator.translate(['The quick brown fox', 'jumps over', 'the lazy dog'], dest='zh-cn') |
输出(stream):
The quick brown fox -> 快速的棕色狐狸
jumps over -> 跳过来
the lazy dog -> 懒狗
The quick brown fox -> 快速的棕色狐狸
jumps over -> 跳过来
the lazy dog -> 懒狗
- 推断语言
1 | langs = translator.detect(['한국어', '日本語', 'English', 'le français']) |
输出(stream):
ko 1
ja 0.96244651
en 1
fr 0.95032448
ko 1
ja 0.96244651
en 1
fr 0.95032448
所有支持的语言预览
1 | LANGUAGES = { |
注意事项
- 单个文本的最大字符限制为15k。
- 由于谷歌翻译的网页版本的限制,此API不保证库始终正常工作。 (如果您不关心稳定性,请使用此库。)
- 如果您想使用稳定的API,我强烈建议您使用Google的官方翻译API。
- 如果您收到HTTP 5xx错误或#6错误,可能是因为Google已禁止您的客户端IP地址。
注意
本文由jupyter notebook转换而来, 您可以在这里下载notebook
统计咨询请加QQ 2726725926, 微信 mllncn, SPSS统计咨询是收费的
微博上@mlln-cn可以向我免费题问
请记住我的网址: mlln.cn 或者 jupyter.cn