,

Automatizzare l’uso di DeepL con python e Selenium

La traduzione di testi può essere un compito lungo e noioso, ma fortunatamente la tecnologia ci offre strumenti che semplificano questo processo.

DeepL è un potente servizio di traduzione automatica che utilizza l’intelligenza artificiale per offrire traduzioni di alta qualità.

In questo articolo, esploreremo come automatizzare l’uso di DeepL utilizzando Python, la libreria Selenium. Preparati a scoprire un modo efficiente e divertente per tradurre i tuoi testi!

Cosa è Selenium e come può aiutarci

Selenium è una libreria Python ampiamente utilizzata per l’automazione di test e l’interazione con siti web. Ci permette di scrivere script che simulano le azioni dell’utente, come il clic su pulsanti o l’inserimento di testo in campi di input.

Sfruttando le potenzialità di Selenium, possiamo automatizzare l’interazione con DeepL, consentendoci di inviare testi da tradurre e ottenere le traduzioni desiderate senza dover accedere manualmente al sito.

Configurazione dell’ambiente

Prima di iniziare, assicuriamoci di avere un ambiente Python configurato correttamente e installato Selenium tramite il comando pip install selenium. Inoltre, avremo bisogno di un web driver, che è un componente essenziale per l’interazione con il browser. Per questo esempio, useremo il web driver di Chrome, ma puoi utilizzare quello di tua scelta.

Puoi usare pyCharm, nella versione Community è un editor molto potente e gratuito.

Scriviamo il codice

Ora è il momento di scrivere il codice per automatizzare l’uso di DeepL.

Utilizzando la libreria Selenium, possiamo aprire il browser, navigare fino al sito di DeepL e inserire il testo da tradurre nel campo di input. Una volta inviato il testo, il risultato della traduzione può essere estratto dalla pagina web e utilizzato nel nostro programma.

Gestione dei risultati e personalizzazione: Una volta che abbiamo ottenuto la traduzione, possiamo manipolarla ulteriormente o integrarla in altre parti del nostro codice. Possiamo anche personalizzare il processo, ad esempio impostando opzioni di traduzione specifiche o gestendo testi più lunghi in modo intelligente.

CODICE

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import xml.etree.ElementTree as ET

global driver


def translate_with_selenium(text):
    try:
        input_box = WebDriverWait(driver, 10).until(
            EC.presence_of_element_located((By.CSS_SELECTOR, '.lmt__source_textarea'))
        )
        input_box.send_keys(text)
        sleep(1)
        translation_box = WebDriverWait(driver, 10).until(
            EC.presence_of_element_located((By.CSS_SELECTOR, '.lmt__target_textarea'))
        )

        translation_text = translation_box.get_attribute('value')

        driver.refresh()

        return str(translation_text)

    except Exception as e:
        print('Si è verificato un errore durante la traduzione:', str(e))
        driver.quit()

Conclusioni

L’automazione dell’uso di DeepL utilizzando Python e Selenium ci offre un modo efficiente per tradurre i nostri testi senza doverli copiare e incollare manualmente. Questo approccio ci permette di risparmiare tempo prezioso e automatizzare compiti ripetitivi.

Lascia un commento