Hvordan få den nåværende URL med selen

Hvordan få den nåværende URL med selen
Selen er et verktøy for nettlesertesting, nettautomatisering og skraping av nettet. Mens du jobber med Selenium -prosjektene dine, kan det hende du må kjenne URL -en på siden din Selenium -kontrollerte nettleser viser. Denne informasjonen kan være nyttig for å holde oversikt over nettadressen fra der du har trukket ut noen data, slik at du kanskje kan oppdatere dataene automatisk ved hjelp av noen skript.

I denne artikkelen skal jeg vise deg hvordan du får den nåværende nettadressen til nettleseren med Selenium. Så la oss komme i gang.

Forutsetninger:

For å prøve ut kommandoene og eksemplene på denne artikkelen, må du ha,

1) En Linux -distribusjon (helst Ubuntu) installert på datamaskinen din.
2) Python 3 installert på datamaskinen din.
3) Pip 3 installert på datamaskinen din.
4) Python Virtualenv pakke installert på datamaskinen din.
5) Mozilla Firefox eller Google Chrome nettlesere installert på datamaskinen din.
6) Må vite hvordan du installerer Firefox Gecko Driver eller Chrome Web Driver.

For å oppfylle kravene 4, 5 og 6, vennligst les artikkelen min Introduksjon til selen med Python 3 Hos Linuxhint.com.

Du kan finne mange artikler om de andre emnene på Linuxhint.com. Sørg for å sjekke dem ut hvis du trenger hjelp.

Sette opp en prosjektkatalog:

For å holde alt organisert, opprette en ny prosjektkatalog selen-url/ følgende:

$ mkdir -pv selen -url/drivere

Naviger til selen-url/ Prosjektkatalog som følger:

$ cd selen-url/

Lag et virtuelt miljø i Python i prosjektkatalogen som følger:

$ virtualenv .Venv

Aktiver det virtuelle miljøet som følger:

$ kilde .Venv/bin/aktiverer

Installer Selenium Python -biblioteket i ditt virtuelle miljø ved å bruke PIP3 som følger:

$ pip3 installer selen

Last ned og installer alle nødvendige nettdrivere i drivere/ Katalogen til prosjektet. Jeg har forklart prosessen med å laste ned og installere nettdrivere i artikkelen min Introduksjon til selen med Python 3. Hvis du trenger hjelp, kan du søke på Linuxhint.com for den artikkelen.

Jeg vil bruke Google Chrome -nettleseren for demonstrasjonen i denne artikkelen. Så jeg vil bruke Chromedriver binær med selen. Du bør bruke Geckodriver Binær hvis du vil bruke Firefox -nettleseren.

Få gjeldende URL med Selenium:

Lag et Python -skript EX01.py I prosjektkatalogen din og skriv inn følgende koder i den.

Fra Selenium Import WebDriver
fra Selenium.Webdriver.felles.nøkler importerer nøkler
Alternativer = webdriver.ChromeOptions ()
alternativer.Hodeløs = sant
nettleser = webdriver.Krom (kjørbar_path = "./Drivere/Chromedriver ", alternativer = alternativer)
nettleser.få ("https: // duckduckgo.com/")
trykk (nettleser.current_url)
nettleser.Lukk()

Når du er ferdig, kan du lagre EX01.py Python -manus.

Her importerer linje 1 og linje 2 alle nødvendige komponenter fra Python Selenium Library.

Linje 4 Oppretter et Chrome Option -objekt, og linje 5 muliggjør hodeløs modus for Chrome -nettleseren.

Linje 7 skaper et krom nettleser objekt ved å bruke Chromedriver binær fra drivere/ Katalogen til prosjektet.

Linje 9 ber nettleseren om å laste DuckDuckGo.com nettsted.

Linje 10 skriver ut gjeldende nettadressen til nettleseren. Her, nettleser.current_url Eiendom brukes til å få tilgang til den gjeldende nettadressen til nettleseren.

Linje 12 lukker nettleseren.

Kjør Python -skriptet EX01.py følgende:

$ Python3 EX01.py

Som du kan se, den nåværende URL -en (https: // DuckduckGo.com) skrives ut på konsollen.

I det tidligere eksemplet har jeg besøkt nettstedet DuckDuckGo.com og trykte gjeldende URL på konsollen. Dette returnerer nettadressen til siden vi besøker. Ikke veldig fancy som vi allerede kjenner sidenadressen. La oss nå søke etter noe på Duckduckgo og prøve å skrive ut nettadressen til søkeresultatet på konsollen.

Lag et Python -skript EX02.py I prosjektkatalogen din og skriv inn følgende koder i den.

Fra Selenium Import WebDriver
fra Selenium.Webdriver.felles.nøkler importerer nøkler
Alternativer = webdriver.ChromeOptions ()
alternativer.Hodeløs = sant
nettleser = webdriver.Krom (kjørbar_path = "./Drivere/Chromedriver ", alternativer = alternativer)
nettleser.få ("https: // duckduckgo.com/")
trykk (nettleser.current_url)
SearchInput = nettleser.find_element_by_id ('search_form_input_homepage')
SearchInput.Send_Keys ('Selenium HQ' + Keys.TAST INN)
trykk (nettleser.current_url)
nettleser.Lukk()

Når du er ferdig, kan du lagre EX02.py Python -manus.

Her er linjer 1-10 de samme som i EX01.py. Så jeg forklarer dem ikke igjen.

Linje 12 finner søketekstboksen og lagrer den i SearchInput variabel.

Linje 13 sender søket Selen HQ i SearchInput tekstboks og trykker på nøkkel ved bruk av Nøkler.TAST INN.

Når søkesiden har lastet inn, nettleser.current_url brukes til å få tilgang til den oppdaterte gjeldende URL.

Linje 15 Skriver ut den oppdaterte gjeldende URL på konsollen.

Linje 17 lukker nettleseren.

Kjør EX02.py Python -manus som følger:

$ Python3 EX02.py

Som du ser, Python -skriptet EX02.py Skriver ut 2 URL -er.

Den første er hjemmesiden til Duckduckgo søkemotor.

Den andre er den oppdaterte gjeldende URL etter å ha utført et søk på Duckduckgo -søkemotoren ved hjelp av spørringen Selen HQ.

Konklusjon:

I denne artikkelen har jeg vist deg hvordan du får den nåværende URL -en i nettleseren ved hjelp av Selenium Python Library. Nå skal du kunne gjøre selenprosjektene dine mer interessante.