Использование Nordvpn для перевода списка слов в python - PullRequest
0 голосов
/ 14 февраля 2020

Я пытаюсь перевести список слов многих языков на английский sh, я пытался использовать библиотеку googletrans, она работала нормально с одним словом, но когда в oop она блокирует меня, после некоторых исследований Я понял, что это из-за Google Restructions, поэтому я установил nordvpn.

в этом коде я пытаюсь подключиться, отключаться от VPN каждый раз, когда Google блокирует меня, чтобы я мог изменить IP-адрес.

это мой код

def translate_text(text, dest_language="en"):
        # Used to translate using the googletrans library
        import json
        translator = googletrans.Translator()
        try:
            translation = translator.translate(text=text, dest=dest_language)
            print(translation)
        except json.decoder.JSONDecodeError:
            # api call restriction
            process = subprocess.Popen(["nordvpn", "d"], shell = True,stdout=subprocess.PIPE)
            process.wait()
            process = subprocess.Popen(["nordvpn", "c", "canada"] , shell = True , stdout=subprocess.PIPE)
            process.wait()
            return translate_text(text=text, dest_language=dest_language)
        return translation


#translate to EN and remove EN stopwords 
ListCapTranslated = []
for row  in ListCaptionsCleanFiltred:
    print(row)
    # REINITIALIZE THE API
    newrow = translate_text(row, dest_language="en")    
    ListCapTranslated.append(newrow)

Я использую библиотеку субпроцесса для подключения и отключения от VPN с помощью команды CMD. и это работает.

но после некоторой итерации я получаю эту ошибку:

ConnectionError: ('Соединение прервано.', RemoteDisconnected ('Соединение с удаленным концом закрыто без ответа'))

...