准备搞个国外的采集站,因此需要用到翻译功能。国内互联网几乎被那几个大厂垄断,阿里、百度、腾讯、有道,所以直接去他们的网站找翻译api,对于我等平民来说,翻译得准不准无所谓,免费就是唯一标准。
首先有道翻译排除,因为它没有免费额度,不过有赠送一定的金额,不是很多,只够用一段时间的。
阿里翻译
- 文字通用版与专业版每月100万字符免费额度
- 图片翻译每月1000次主账号免费试用
- 文档翻译每月1000页免费额度
- 证件照翻译每月1000次免费额度
- 语种识别每月100万字符免费额度
腾讯翻译
- 文本翻译的每月免费额度为5百万字符。
- 图片翻译的每月免费额度为1万次调用。
- 语音翻译的每月免费额度为1万次调用。
- 免费额度每月1日0点重置。
百度翻译
- 通用翻译标准版免费限制请求速度(QPS=1)【自2022年8月1日起,每月限额5万字符】
- 通用翻译高级版每月前200万字符免费,超出后仅收取超出部分费用(QPS=10),49元/百万字符
- 通用翻译尊享版每月前200万字符免费,超出后仅收取超出部分费用(QPS=100),49元/百万字符
- 垂直领域每月50万字符免费
- 语种识别限时免费
- 图片翻译每月1W次请求免费
- 语音翻译每月1W次请求免费
对比后不难看出,百度的通用翻译对个人来说简直就是福音,毫不犹豫选择百度翻译。
当然如果你对翻译速度有要求,可以考虑腾讯与阿里的,因为他们的免费额度不限制速度,只限制字符数量。一般来说,6000字符相当于2000左右汉字,翻译api符号都算字符数量的,一个月30多万字的翻译应该够用了,腾讯的可以翻译大概170W字。
下面是python版的百度翻译demo
# -*- coding: utf-8 -*-
# This code shows an example of text translation from English to Simplified-Chinese.
# This code runs on Python 2.7.x and Python 3.x.
# You may install `requests` to run this code: pip install requests
# Please refer to `https://api.fanyi.baidu.com/doc/21` for complete api document
import requests
import random
import json
from hashlib import md5
# Set your own appid/appkey.
appid = '你的appid'
appkey = '你的appkey'
# For list of language codes, please refer to `https://api.fanyi.baidu.com/doc/21`
from_lang = 'zh'
to_lang = 'en'
endpoint = 'http://api.fanyi.baidu.com'
path = '/api/trans/vip/translate'
url = endpoint + path
query = '这里是需要翻译的内容。'
# Generate salt and sign
def make_md5(s, encoding='utf-8'):
return md5(s.encode(encoding)).hexdigest()
salt = random.randint(32768, 65536)
sign = make_md5(appid + query + str(salt) + appkey)
# Build request
headers = {'Content-Type': 'application/x-www-form-urlencoded'}
payload = {'appid': appid, 'q': query, 'from': from_lang, 'to': to_lang, 'salt': salt, 'sign': sign}
# Send request
r = requests.post(url, params=payload, headers=headers)
result = r.json()
# Show response
print(json.dumps(result, indent=4, ensure_ascii=False))