Ошибка Python Google переводчик при переводе текста, ConnectionError: HTTPSConnectionPool (host = 'translate.google.com', port = 443) - PullRequest
0 голосов
/ 21 ноября 2018

Я хочу преобразовать несколько предложений с вьетнамского на английский, сохраненных в файле Excel.У меня есть около 200 предложений.У меня последняя версия urllib3.Даже если я оставлю всего 10 предложений и введу приведенный ниже код, я получу следующую ошибку.Есть ли ограничения на количество предложений, которые я могу перевести за один раз?

Ошибка:

Ошибка подключения: HTTPSConnectionPool (host = 'translate.google.com', port = 443): максимальное количество повторных попыток превышено с помощью url: / (вызвано NewConnectionError (': не удалось установить новое соединение: [WinError 10060]) Попытка подключения не удалась, поскольку подключенная сторона не ответила должным образом через некоторое время,или не удалось установить соединение, так как подключенный хост не смог ответить ',))

Код:

from googletrans import Translator
import pandas as pd
import numpy as np
import time
import math
translator = Translator()

data=pd.read_excel('C:\TextAnalytics\Vietnamese to english.xlsx',dtype=object)


data.to_csv('data_temp.csv')

unique_data=pd.DataFrame(data['Subreason'].value_counts()).reset_index()[['index']]

unique_data['Translations']=''

for i in range(len(unique_data)):
    temp=(unique_data['index'].iloc[i])
    if(type(temp)==str):
        print(temp)
        a=translator.translate(temp,src='vi',dest='en')
        unique_data['Translations'].iloc[i]=a.text
        print(a.text)
        if(i%20==0):
            time.sleep(5)
            print(i)
        else:
            time.sleep(1)

        if(i>20000):
            break

translate_dict=unique_data.set_index('index').to_dict().get('Translations')

data['Google_Translate']=data.REWORK_DESCRIPTION.map(translate_dict)

data.drop('Converted',inplace=True,axis=1)

path=r'data mv table.xls'
writer = pd.ExcelWriter(path, engine='openpyxl')
data.to_excel(writer, 'Translated', index=False)
writer.save()
...