Selen

Kako osvežiti stran s selenom

Kako osvežiti stran s selenom
Osveževanje spletnih strani je zelo pogosto. Osvežimo spletno stran, da vidimo posodobljene rezultate. Enako velja za testiranje brskalnikov, avtomatizacijo spletnih strani in strganje spletnih strani s spletnim gonilnikom Selenium.

V tem članku vam bom pokazal, kako osvežiti stran s knjižnico Selenium Python. 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-osveži / kot sledi:

$ mkdir -pv selenium-refresh / gonilniki

Pomaknite se do selen-osveži / imenik projekta, kot sledi:

$ cd selen-osveži /

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 s pomočjo PIP3, kot sledi:

$ pip3 namesti selen

Prenesite in namestite ves potrebni spletni gonilnik 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.

1. način: Uporaba brskalniške metode refresh ()

Prva metoda je najlažja in priporočena metoda osvežilne strani s selenom.

Ustvarite nov skript Python ex01.py in vnesite naslednje vrstice kod v njem.

iz spletnega pogona za uvoz selena
iz selena.spletni pogon.običajni.tipke za uvoz ključev
od časa uvoza spanja
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: // www.unixtimestamp.com / ")
timestamp = brskalnik.find_element_by_xpath ("// h3 [@ class = 'text-danger'] [1]")
print ('Trenutni časovni žig:% s'% (časovni žig.besedilo.split (") [0]))
spanje (5)
brskalnik.osveži ()
timestamp = brskalnik.find_element_by_xpath ("// h3 [@ class = 'text-danger'] [1]")
print ('Trenutni časovni žig:% s'% (časovni žig.besedilo.split (") [0]))
brskalnik.zapri ()

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

Vrstici 1 in 2 uvozita vse zahtevane komponente selena.

Vrstica 3 uvozi funkcijo sleep () iz časovne knjižnice. To bom uporabil, da počakam nekaj sekund, da se spletna stran posodobi, da bomo lahko po osvežitvi spletne strani dobili nove podatke.

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

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

Vrstica 9 brskalniku pove, naj naloži spletno mesto unixtimestamp.com.

Vrstica 11 z izbirnikom XPath poišče element, ki vsebuje podatke o časovnem žigu s strani, in ga shrani v časovni žig spremenljivka.

Vrstica 12 razčleni podatke o časovnem žigu iz elementa in jih natisne na konzolo.

Vrstica 14 uporablja spanje () funkcija počaka 5 sekund.

Vrstica 15 osveži trenutno stran s pomočjo brskalnik.osveži () metoda.

Vrstici 17 in 18 sta enaki vrstici 11 in 12. Na strani poišče element časovnega žiga in na konzolo natisne posodobljeni časovni žig.

Vrstica 20 zapre brskalnik.

Zaženite skript Python ex01.py kot sledi:

$ python3 ex01.py

Kot vidite, je časovni žig natisnjen na konzoli.

Po 5 sekundah tiskanja prvega časovnega žiga se stran osveži in posodobljeni časovni žig se natisne na konzoli, kot lahko vidite na spodnjem posnetku zaslona.

2. način: Ponovni pregled istega URL-ja

Drugi način osveževanja strani je ponovni obisk istega URL-ja z uporabo brskalnik.dobili () metoda.

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
od časa uvoza spanja
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: // www.unixtimestamp.com / ")
timestamp = brskalnik.find_element_by_xpath ("// h3 [@ class = 'text-danger'] [1]")
print ('Trenutni časovni žig:% s'% (časovni žig.besedilo.split (") [0]))
spanje (5)
brskalnik.get (brskalnik.trenutni_url)
timestamp = brskalnik.find_element_by_xpath ("// h3 [@ class = 'text-danger'] [1]")
print ('Trenutni časovni žig:% s'% (časovni žig.besedilo.split (") [0]))
brskalnik.zapri ()

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

Vse je enako kot v ex01.py. Razlika je le v vrstici 15.

Tukaj uporabljam brskalnik.dobili () za obisk trenutnega URL-ja strani. Do URL-ja trenutne strani je mogoče dostopati s pomočjo brskalnik.trenutni_url lastnine.

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

$ python3 ex02.py

Kot lahko vidite, skript Pythion ex02.py natisne isto vrsto informacij kot v ex01.py.

Zaključek:

V tem članku sem vam predstavil 2 načina osveževanja trenutne spletne strani s pomočjo knjižnice Selenium Python. Zdaj bi lahko s Selenijem počeli še zanimivejše stvari.

Namestite najnovejšo strategijo igre OpenRA v Ubuntu Linux
OpenRA je Libre / Free Real Time strateški stroj, ki poustvarja zgodnje igre Westwood, kot je klasična Command & Conquer: Red Alert. Porazdeljeni modi...
Namestite najnovejši Dolphin Emulator za Gamecube & Wii v Linux
Dolphin Emulator vam omogoča igranje izbranih iger Gamecube in Wii na osebnih računalnikih Linux (PC). Dolphin Emulator je prosto dostopen in odprtok...
Kako uporabljati GameConqueror Cheat Engine v Linuxu
Članek zajema vodnik o uporabi varalnice GameConqueror v Linuxu. Številni uporabniki, ki igrajo igre v sistemu Windows, pogosto uporabljajo aplikacijo...