我有一个CSV文件,其中存储了来自Twitter的推文。其中一些是非英语的,我正在使用AWS-translate服务。
我正在将CSV转换为数据帧,然后尝试为翻译的tweet文本创建新列,但是对于某些tweet,由于对语言检测的信心不足,它显示错误并且代码无法继续进行。
我想跳过这些错误生成文本,并想继续执行代码以进一步执行。
出现以下错误:
DetectedLanguageLowConfidenceException:发生错误 (DetectedLanguageLowConfidenceException)时调用 TranslateText操作:翻译请求因低而被拒绝 自动检测到的源语言“ fr”的置信度。指定一个有效的 源语言代码来强制翻译。
这是我要获取输出的代码。 jap.csv是我的tweet存储的CSV。使用此CSV文件,我创建了翻译的df名称。 “文本”是其中存在鸣叫文本的列,而已翻译的文本是我存储已翻译文本的新列。
import boto3
import aws_credentials
import pandas as pd
translate = boto3.client('translate',aws_access_key_id= aws_credentials.key_id,aws_secret_access_key= aws_credentials.secret_key,
region_name='us-west-2')
translated = pd.read_csv('jap.csv')
translated['Translated_text'] = translated['text']
translated['Orginal_text_lang']= 'en'
for i, row in translated.iterrows():
result = translate.translate_text(Text= row['text'],
SourceLanguageCode='auto', TargetLanguageCode="en")
T_text= result.get('TranslatedText')
So_lg= result.get('SourceLanguageCode')
translated.at[i,'Translated_text']= T_text
translated.at[i,'Orginal_text_lang']= So_lg
translated.to_csv('translated.csv')
我想跳过所有产生此类错误的文本,代码应执行到结束并为翻译后的文本生成输出CSV。
答案 0 :(得分:0)
嗨,我设法使用try andexcept方法解决了这个问题。我提到了这个问题。
Ignoring an error message to continue with the loop in python