使用AWS转换服务时如何解决“ DetectedLanguageLowConfidenceException”错误

时间:2019-04-03 09:37:09

标签: python pandas csv translate

我有一个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。

1 个答案:

答案 0 :(得分:0)

嗨,我设法使用try andexcept方法解决了这个问题。我提到了这个问题。

Ignoring an error message to continue with the loop in python