Автоматический перевод текста с помощью Selenium в Python

Автоматический перевод текста с помощью Selenium в Python

Автоматический перевод текста с помощью Selenium в Python

Доброго времени суток! В данной статье я покажу Вам как можно автоматизировать
перевод (в примере — с английского на русский) небольших кусков текста с Selenium.

Проект создается в бесплатной среде разработки PyCharm Community Edition.
Помимо этого вам еще нужен будет скачанный драйвер браузера Chromium — вот
здесь Вы можете найти нужную версию: https://chromedriver.storage.googleapis.com/index.html.

Итак, для начала установим сам Selenium:



$ pip install selenium



Далее скачанный файл chromedriver положите в папку venv/bin (предполагается, что Вы работаете
в виртуальной среде, автоматически созданной при генерировании проекта PyCharm)

А теперь непосредственно код:



import time



from selenium.webdriver import Chrome

from selenium.webdriver.common.by import By



# чтение английского содержимого

def get_file_content(filename):

    with open(filename, 'r') as fd:

        return fd.read()





# запись полученного ответа

def write_file(filename, content):

    with open(filename, 'w') as fd:

        fd.write(content)





# сам перевод

def get_translate():

    driver = Chrome()

    # размер окна

    driver.set_window_size(1360, 860)

    # ссылка на сервис перевода

    driver.get("https://translate-service-url/")



    # засыпаем на 5 секунд

    time.sleep(5)



    driver.implicitly_wait(0.5)



    # читаем содержимое файла и отправляем его в форму перевода

    fakeArea = driver.find_element(by=By.ID, value="inputText")

    content = get_file_content('english.txt')

    fakeArea.send_keys(content)



    # ждем

    time.sleep(4)



    # получаем перевод

    translation = driver.find_element(by=By.ID, value="outputText")

    value = translation.get_attribute('textContent')



    # записываем в файл

    write_file('./output.txt', value)

    print("Перевод текста завершен")



    # выходим

    driver.quit()





if __name__ == '__main__':

    get_translate()







Вот таким образом мы получили программу, которая сама заходит на сайт, делает перевод и сохраняет его нам в файл.
Однако, обратите внимание, что часто сервисы проверяют запросы на предмет их совершения автоматическими программами — ботами
и показывают капчу. В таком случае, например, желательно останавливать работу программы на небольшие промежутки времени, чтобы бот не был
забанен.

Источник

НЕТ КОММЕНТАРИЕВ

Оставить комментарий