Come ottenere l'URL corrente con selenio

Come ottenere l'URL corrente con selenio
Selenio è uno strumento per i test del browser, l'automazione Web e il raschiatura web. Mentre si lavora ai tuoi progetti di selenio, potrebbe essere necessario conoscere l'URL della pagina il browser Web controllato dal selenio sta visualizzando. Queste informazioni possono essere utili per tenere traccia dell'URL da dove hai estratto alcuni dati in modo da poter aggiornare automaticamente i dati utilizzando alcuni script.

In questo articolo, ti mostrerò come ottenere l'attuale URL del browser con selenio. Quindi iniziamo.

Prerequisiti:

Per provare i comandi e gli esempi di questo articolo, devi avere,

1) Una distribuzione Linux (preferibilmente Ubuntu) installata sul tuo computer.
2) Python 3 installato sul tuo computer.
3) PIP 3 installato sul tuo computer.
4) Python Virtualenv pacchetto installato sul tuo computer.
5) Mozilla Firefox o browser Web di Google Chrome installati sul tuo computer.
6) Deve sapere come installare il driver GECKO Firefox o il driver Web Chrome.

Per soddisfare i requisiti 4, 5 e 6, leggi il mio articolo Introduzione al selenio con Python 3 a Linuxhint.com.

Puoi trovare molti articoli sugli altri argomenti su Linuxhint.com. Assicurati di verificarli se hai bisogno di assistenza.

Impostazione di una directory del progetto:

Per mantenere tutto organizzato, crea una nuova directory di progetto selenio-url/ come segue:

$ MKDIR -PV Selenium -Url/Driver

Navigare verso il selenio-url/ Directory del progetto come segue:

$ cd selenio-url/

Crea un ambiente virtuale Python nella directory del progetto come segue:

$ virtualenv .Venv

Attiva l'ambiente virtuale come segue:

$ fonte .venv/bin/attiva

Installa la libreria di Selenio Python nel tuo ambiente virtuale utilizzando PIP3 come segue:

$ PIP3 Installa selenio

Scarica e installa tutti i Web driver richiesti in autisti/ directory del progetto. Ho spiegato il processo di download e installazione di Web driver nel mio articolo Introduzione al selenio con Python 3. Se hai bisogno di assistenza, cerca Linuxhint.com per quell'articolo.

Utilizzerò il browser Web di Google Chrome per la dimostrazione in questo articolo. Quindi, userò il Chromedriver binario con selenio. Dovresti usare il geckodriver binario se si desidera utilizzare il browser Web Firefox.

Ottenere l'URL corrente con selenio:

Crea uno script Python ex01.Py nella directory del tuo progetto e digita le seguenti righe di codici in esso.

dal webdriver di import selenio
da selenio.Webdriver.comune.tasti di importazione delle chiavi
Opzioni = WebDriver.Chromeoptions ()
opzioni.senza testa = vero
browser = webdriver.Chrome (Executable_Path = "./driver/chromedriver ", options = options)
browser.get ("https: // DuckDuckgo.com/")
Stampa (browser.current_url)
browser.vicino()

Una volta che hai finito, salva il ex01.Py Script di Python.

Qui, la riga 1 e la riga 2 importano tutti i componenti richiesti dalla biblioteca di selenio Python.

La riga 4 crea un oggetto Opzioni Chrome e la riga 5 consente la modalità senza testa per il browser Web Chrome.

La riga 7 crea un cromo browser oggetto usando il Chromedriver binario dal autisti/ directory del progetto.

La riga 9 dice al browser di caricare DuckDuckgo.sito web com.

La riga 10 stampa l'URL corrente del browser. Qui, browser.Current_url La proprietà viene utilizzata per accedere all'URL corrente del browser.

La riga 12 chiude il browser.

Esegui lo script Python ex01.Py come segue:

$ Python3 Ex01.Py

Come puoi vedere, l'attuale URL (https: // DuckDuckgo.com) è stampato sulla console.

Nell'esempio precedente, ho visitato il sito web DuckDuckgo.com e stampato l'URL corrente sulla console. Questo restituisce l'URL della pagina che stiamo visitando. Non è molto elegante perché conosciamo già l'URL della pagina. Ora, cerchiamo qualcosa su DuckDuckgo e proviamo a stampare l'URL della pagina dei risultati della ricerca sulla console.

Crea uno script Python ex02.Py nella directory del tuo progetto e digita le seguenti righe di codici in esso.

dal webdriver di import selenio
da selenio.Webdriver.comune.tasti di importazione delle chiavi
Opzioni = WebDriver.Chromeoptions ()
opzioni.senza testa = vero
browser = webdriver.Chrome (Executable_Path = "./driver/chromedriver ", options = options)
browser.get ("https: // DuckDuckgo.com/")
Stampa (browser.current_url)
SearchInput = browser.find_element_by_id ('search_form_input_homepage')
SearchInput.Send_Keys (tasti 'selenio hq' +.ACCEDERE)
Stampa (browser.current_url)
browser.vicino()

Una volta che hai finito, salva il ex02.Py Script di Python.

Qui, le righe 1-10 sono le stesse di in ex01.Py. Quindi, non li sto più spiegando.

La riga 12 trova la casella di testo di ricerca e la memorizza in SearchInput variabile.

La riga 13 invia la query di ricerca Selenium HQ nel SearchInput Casella di testo e preme il chiave usando Tasti.ACCEDERE.

Una volta carica la pagina di ricerca, browser.Current_url viene utilizzato per accedere all'URL corrente aggiornato.

La riga 15 stampa l'URL corrente aggiornato sulla console.

La riga 17 chiude il browser.

Corri il ex02.Py Script Python come segue:

$ Python3 Ex02.Py

Come puoi vedere, lo script Python ex02.Py Stampa 2 URL.

Il primo è l'URL della homepage del motore di ricerca DuckDuckgo.

Il secondo è l'URL corrente aggiornato dopo aver eseguito una ricerca sul motore di ricerca DuckDuckgo utilizzando la query Selenium HQ.

Conclusione:

In questo articolo, ti ho mostrato come ottenere l'attuale URL del browser Web usando la libreria di Selenium Python. Ora dovresti essere in grado di rendere i tuoi progetti di selenio più interessanti.