最近在找翻译库,试过了一些翻译库,要么限制字符,要么限制调用次数,最后发现translators这个库没有任何限制,还封装了不同的翻译网站,使用的技术是模拟在网页操作翻译然后获取结果,试了一下感觉效果还不错,代码如下:
1.安装
pip install translators
2.使用
import translators as tsdef split_text_into_chunks(text, max_length):# 按照换行符分割文本lines = text.splitlines()chunks = []current_chunk = ""for line in lines:# 如果当前部分加上新行超过最大字数,则提交当前部分if len(current_chunk) + len(line) + 1 > max_length:chunks.append(current_chunk)current_chunk = lineelse:# 继续累积当前部分if current_chunk:current_chunk += "\n" + lineelse:current_chunk = line# 最后一个chunk也要加进去if current_chunk:chunks.append(current_chunk)return chunks
# 我这里要翻译的内容较多,所以做了拆分,分批次翻译,默认是使用必应翻译,库提供了多种翻译网站,具体请参考:https://github.com/UlionTse/translators
translated_text='hello,world'
for line in split_text_into_chunks(translated_text, 1000): trans_text+=ts.translate_text(line,from_language='en',to_language='zh')
3.碰到的问题
碰到的一个问题就是如果使用了代理会提示Unable to connect the Internet.,如果出现了这个问题把python升级一下就好了,我是升级到了3.10.11
相关网站:https://github.com/UlionTse/translators