Selen

Kako dobiti trenutni URL s selenom

Kako dobiti trenutni URL s selenom
Selen je orodje za testiranje brskalnikov, avtomatizacijo spleta in strganje po spletu. Med delom na svojih projektih Selenium boste morda morali poznati URL strani, ki jo prikazuje spletni brskalnik, ki ga nadzoruje Selenium. Te informacije so lahko koristne za spremljanje URL-ja, od koder ste izvlekli nekatere podatke, tako da boste morda lahko podatke samodejno posodabljali s pomočjo nekega skripta.

V tem članku vam bom pokazal, kako pridobiti trenutni URL brskalnika s selenom. Torej, začnimo.

Pogoji:

Če želite preizkusiti ukaze in primere tega članka, jih morate imeti,

1) V računalniku nameščena distribucija Linuxa (po možnosti Ubuntu).
2) Python 3, nameščen v vašem računalniku.
3) PIP 3, nameščen v vašem računalniku.
4) Python virtualenv paket, nameščen v računalniku.
5) Spletni brskalniki Mozilla Firefox ali Google Chrome, nameščeni v vašem računalniku.
6) Morate vedeti, kako namestiti gonilnik Firefox Gecko ali spletni gonilnik Chrome.

Za izpolnjevanje zahtev 4, 5 in 6 preberite moj članek Uvod v selen s Pythonom 3 na Linuxhint.com.

V LinuxHintu lahko najdete veliko člankov o drugih temah.com. Ne pozabite jih preveriti, če potrebujete pomoč.

Nastavitev imenika projektov:

Če želite vse organizirati, ustvarite nov imenik projektov selen-url / kot sledi:

$ mkdir -pv selen-url / gonilniki

Pomaknite se do selen-url / imenik projekta, kot sledi:

$ cd selen-url /

Ustvarite navidezno okolje Python v imeniku projekta, kot sledi:

$ virtualenv .venv

Aktivirajte navidezno okolje na naslednji način:

$ vir .venv / bin / aktiviraj

Namestite knjižnico Selenium Python v vaše navidezno okolje s pomočjo PIP3, kot sledi:

$ pip3 namesti selen

Prenesite in namestite vse potrebne spletne gonilnike v vozniki / imenik projekta. V članku sem razložil postopek prenosa in namestitve spletnih gonilnikov Uvod v selen s Pythonom 3. Če potrebujete pomoč, poiščite LinuxHint.com za ta članek.

Za predstavitev v tem članku bom uporabil spletni brskalnik Google Chrome. Torej, uporabil bom kromedriver binarno s selenom. Uporabite geckodriver binarno, če želite uporabljati spletni brskalnik Firefox.

Pridobivanje trenutnega URL-ja s selenom:

Ustvarite skript Python ex01.py v imenik projekta in vanj vnesite naslednje vrstice kod.

iz spletnega pogona za uvoz selena
iz selena.spletni pogon.običajni.tipke za uvoz ključev
options = spletni pogon.Možnosti Chrome ()
opcije.brezglava = Res
brskalnik = spletni voznik.Chrome (izvršljiva_pot = "./ drivers / chromedriver ", možnosti = možnosti)
brskalnik.get ("https: // duckduckgo.com / ")
natisni (brskalnik.trenutni_url)
brskalnik.zapri ()

Ko končate, shranite ex01.py Python skript.

Tu vrstica 1 in vrstica 2 uvozita vse zahtevane komponente iz knjižnice selena Python.

Vrstica 4 ustvari objekt Chrome Možnosti, vrstica 5 pa omogoča brezglavi način za spletni brskalnik Chrome.

Vrstica 7 ustvari Chrome brskalnik predmet z uporabo kromedriver binarni iz vozniki / imenik projekta.

Vrstica 9 brskalniku pove, naj naloži duckduckgo.spletna stran com.

Vrstica 10 natisne trenutni URL brskalnika. Tukaj, brskalnik.trenutni_url lastnost se uporablja za dostop do trenutnega URL-ja brskalnika.

Vrstica 12 zapre brskalnik.

Zaženite skript Python ex01.py kot sledi:

$ python3 ex01.py

Kot lahko vidite, je trenutni URL (https: // duckduckgo.com) je natisnjen na konzoli.

V prejšnjem primeru sem obiskal spletno stran duckduckgo.com in na konzolo natisnil trenutni URL. To vrne URL strani, ki jo obiskujemo. Ni zelo modno, saj že poznamo URL strani. Zdaj pa poiščimo nekaj na DuckDuckGo in poskusimo natisniti URL strani z rezultati iskanja na konzoli.

Ustvarite skript Python ex02.py v imenik projekta in vanj vnesite naslednje vrstice kod.

iz spletnega pogona za uvoz selena
iz selena.spletni pogon.običajni.tipke za uvoz ključev
options = spletni pogon.Možnosti Chrome ()
opcije.brezglava = Res
brskalnik = spletni voznik.Chrome (izvršljiva_pot = "./ drivers / chromedriver ", možnosti = možnosti)
brskalnik.get ("https: // duckduckgo.com / ")
natisni (brskalnik.trenutni_url)
searchInput = brskalnik.find_element_by_id ('search_form_input_homepage')
searchInput.send_keys ('selenium hq' + tipke.ENTER)
natisni (brskalnik.trenutni_url)
brskalnik.zapri ()

Ko končate, shranite ex02.py Python skript.

Tu so vrstice 1-10 enake kot v ex01.py. Torej jih ne bom več razlagal.

Vrstica 12 poišče besedilno polje za iskanje in ga shrani v searchInput spremenljivka.

Vrstica 13 pošlje iskalno poizvedbo selen hq v searchInput polje in pritisne na tipko Ključi.ENTER.

Ko se stran za iskanje naloži, brskalnik.trenutni_url se uporablja za dostop do posodobljenega trenutnega URL-ja.

Vrstica 15 na konzolo natisne posodobljeni trenutni URL.

Vrstica 17 zapre brskalnik.

Zaženite ex02.py Python skript, kot sledi:

$ python3 ex02.py

Kot lahko vidite, skript Python ex02.py natisne 2 URL-ja.

Prvi je URL domače strani iskalnika DuckDuckGo.

Drugi je posodobljeni trenutni URL po iskanju v iskalniku DuckDuckGo z uporabo poizvedbe selen hq.

Zaključek:

V tem članku sem vam pokazal, kako pridobiti trenutni URL spletnega brskalnika s pomočjo knjižnice Selenium Python. Zdaj bi morali svoje projekte Selenium narediti bolj zanimive.

Kako povečati FPS v Linuxu?
FPS pomeni Število sličic na sekundo. Naloga FPS je merjenje hitrosti sličic pri predvajanju video posnetkov ali igranih predstavah. Z enostavnimi bes...
Najboljše laboratorijske igre Oculus App
Če ste lastnik slušalk Oculus, morate biti seznanjeni s stranskim nalaganjem. Sideloading je postopek namestitve vsebine, ki ni shranjena v slušalke. ...
10 najboljših iger za igranje v Ubuntuju
Platforma Windows je bila ena izmed prevladujočih platform za igre na srečo zaradi velikega odstotka iger, ki se danes razvijajo za naravno podporo si...