Selen

Kako narediti posnetek zaslona s selenom

Kako narediti posnetek zaslona s selenom
Selen je odlično orodje za testiranje brskalnikov, avtomatizacijo spletnih strani in strganje spletnih strani. S selenijem lahko posnamete tudi posnetke zaslona vaše spletne strani. To je zelo pomembno za preizkušanje uporabniškega vmesnika (UI) vašega spletnega mesta v različnih spletnih brskalnikih.

Različni spletni brskalniki za upodabljanje spletnih strani uporabljajo različne mehanizme upodabljanja. Torej, ista koda vmesnika morda ne bo upodabljana na enak način v vseh spletnih brskalnikih. Če želite odpraviti to težavo, boste morda morali na svoje spletno mesto dodati nekatere kode vmesnika za brskalnik. Vendar to ni edini težaven del pri oblikovanju spletnega mesta, združljivega z različnimi brskalniki in napravami. Ročno preverjanje, kako izgleda spletno mesto v vsakem ciljnem brskalniku, je lahko dolgotrajno. Morali bi odpreti vse ciljne spletne brskalnike, obiskati spletno stran, počakati, da se stran naloži in med seboj primerjati upodobljene strani. Če želite prihraniti čas, lahko s funkcijo posnetka zaslona Selenium samodejno posnamete posnetke zaslona vašega spletnega mesta v vsakem ciljnem brskalniku in slike primerjate sami. To je veliko hitreje kot ročna metoda. Ta članek vam bo pokazal, kako narediti posnetke zaslona oken brskalnika s pomočjo selena.

Pogoji

Če želite preizkusiti ukaze in primere, obravnavane v tem članku, 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) Paket Python virtualenv nameščen v računalniku.
5) Spletni brskalniki Mozilla Firefox in Google Chrome, nameščeni v vašem računalniku.
6) Znanje o namestitvi gonilnika Firefox Gecko in spletnega gonilnika Chrome v vaš sistem.

Če želite izpolniti zahteve 4, 5 in 6, si lahko preberete moj članek Uvod v selen s Pythonom 3 na Linuxhint.com.

Veliko drugih člankov o zahtevanih temah najdete na LinuxHint.com. Če potrebujete dodatno pomoč, si oglejte te članke.

Nastavitev imenika projektov

Če želite vse organizirati, ustvarite nov imenik projekta selen-posnetek zaslona /, kot sledi:

$ mkdir -pv selenium-screenshot / slike, gonilniki

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

$ cd selenium-posnetek zaslona /

Ustvarite navidezno okolje Python v imeniku projekta, kot sledi:

$ virtualenv .venv

Aktivirajte navidezno okolje, kot sledi:

$ vir .venv / bin / aktiviraj

Namestite selen s pomočjo PIP3, kot sledi:

$ pip3 namesti selen

Prenesite in namestite 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č pri tej temi, poiščite LinuxHint.com za ta članek.

Osnove posnetkov zaslona s selenom

V tem razdelku boste našli zelo preprost primer snemanja posnetkov zaslona brskalnika s selenom.

Najprej ustvarite nov skript Python ex01_google-chrome.py in v skript vnesite naslednje vrstice kod.

iz spletnega pogona za uvoz selena
iz selena.spletni pogon.običajni.tipke za uvoz ključev
googleChromeOptions = webdriver.krom.opcije.Opcije()
googleChromeOptions.brezglava = Res
googleChromeOptions.add_argument ('- velikost okna = 1280.720')
googleChrome = spletni voznik.Chrome (izvršljiva_pot = "./ drivers / chromedriver ",
options = googleChromeOptions)
pageUrl = "https: // www.w3šole.com ";
googleChrome.get (pageUrl)
googleChrome.save_screenshot ('images / w3schools_google-chrome.png ')
googleChrome.zapri ()

Ko končate, shranite ex01_google-chrome.py Python skript.

Vrstica 4 ustvari Opcije predmet za spletni brskalnik Google Chrome.

Vrstica 5 omogoča brezglavi način za Google Chrome.

Vrstica 6 nastavi velikost okna na 1280 × 720 slikovnih pik.

Vrstica 8 ustvari objekt brskalnika z gonilnikom Chrome in ga shrani v googleChrome spremenljivka.

Vrstica 10 opredeljuje a pageUrl spremenljivka. The pageUrl spremenljivka vsebuje URL spletne strani, ki jo bo posnel zaslon Selenium.

Vrstica 11 naloži pageUrl v brskalniku.

Vrstica 12 uporablja shrani_screenshot () za shranjevanje posnetka zaslona okna brskalnika v datoteko w3schools_google-chrome.png v slike / imenik projekta.

Na koncu vrstica 14 zapre brskalnik.

Nato zaženite ex01_google-chrome.py Python skript, kot sledi:

$ python3 ex01_google-chrome.py

Po uspešni izvedbi skripta se posnetek zaslona shrani v slikovno datoteko w3schools_google-chrome.png v slike / imenik projekta, kot lahko vidite na spodnjem posnetku zaslona.

Če želite posneti posnetek zaslona istega spletnega mesta, vendar v spletnem brskalniku Firefox, ustvarite nov skript Python ex01_firefox.py in v skript vnesite naslednje vrstice kod.

iz spletnega pogona za uvoz selena
iz selena.spletni pogon.običajni.tipke za uvoz ključev
firefoxOptions = spletni gonilnik.firefox.opcije.Opcije()
firefoxOptions.brezglava = Res
firefoxOptions.add_argument ('- širina = 1280')
firefoxOptions.add_argument ('- višina = 720')
firefox = spletni voznik.Firefox (izvršljiva_pot = "./ drivers / geckodriver ", options = firefoxOptions)
pageUrl = "https: // www.w3šole.com ";
firefox.get (pageUrl)
firefox.save_screenshot ('images / w3schools_firefox.png ')
firefox.zapri ()

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

Vrstica 4 ustvari Opcije predmet za spletni brskalnik Firefox.

Vrstica 5 omogoča način brez glave za Firefox.

Vrstica 6 nastavi širino okna brskalnika na 1280 slikovnih pik, vrstica 7 pa višino okna brskalnika nastavi na 720 slikovnih pik.

Vrstica 9 ustvari objekt brskalnika z gonilnikom Firefox Gecko in ga shrani v firefox spremenljivka.

Vrstica 11 opredeljuje a pageUrl spremenljivka. The pageUrl spremenljivka vsebuje URL spletne strani, ki jo bo posnel zaslon Selenium.

Vrstica 13 naloži pageUrl v brskalniku.

Vrstica 14 uporablja shrani_screenshot () za shranjevanje posnetka zaslona okna brskalnika v datoteko w3schools_firefox.png v slike / imenik projekta.

Na koncu vrstica 15 zapre brskalnik.

Nato zaženite ex01_firefox.py Python skript, kot sledi:

$ python3 ex01_firefox.py

Po uspešni izvedbi skripta je treba posnetek zaslona shraniti v slikovno datoteko w3schools_firefox.png v slike / imenik projekta, kot lahko vidite na spodnjem posnetku zaslona.

Posnetek zaslona različnih ločljivosti zaslona

Ta razdelek vam bo pokazal, kako narediti posnetke zaslona iste spletne strani v različnih ločljivostih zaslona. V tem razdelku bom uporabljal spletni brskalnik Google Chrome, za ta razdelek pa lahko uporabite Firefox ali kateri koli drug brskalnik.

Najprej ustvarite nov skript Python ex02.py in v skript vnesite naslednje vrstice kode.

iz spletnega pogona za uvoz selena
iz selena.spletni pogon.običajni.tipke za uvoz ključev
pageUrl = "https: // www.w3šole.com / ";
ločljivosti = ['320,1080', '500,1080', '720,1080', '1366,1080', '1920,1080']
za reševanje v resolucijah:
print ("Posnetek zaslona za ločljivost% s ..."% (ločljivost.zamenjaj (',', 'x')))
chromeOptions = spletni pogon.Možnosti Chrome ()
chromeOptions.brezglava = Res
chromeOptions.add_argument ('- velikost okna =' + ločljivost)
chrome = spletni pogon.Chrome (izvršljiva_pot = "./ drivers / chromedriver ", options = chromeOptions)
krom.get (pageUrl)
outputImage = 'images / homepage_chrome_' + ločljivost.replace (',', '_') + '.png '
krom.posnetek zaslona (outputImage)
krom.zapri ()
print ('Shranjeno v% s.'% (outputImage))

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

Vrstica 4 opredeljuje a pageUrl spremenljivka, ki vsebuje URL spletne strani, ki bi jo rad posnel v različnih ločljivostih zaslona.

Vrstica 5 opredeljuje a ločljivosti seznam, ki vsebuje seznam ločljivosti, za katere bi rad naredil posnetke zaslona.

Vrstica 7 se ponovi skozi vsako od resolucijas v resolucij seznam.

V zanki Line 8 na konzolo natisne smiselno sporočilo.

Vrstice 10-15 ustvarijo objekt brskalnika z resolucija trenutne iteracije zanke in jo shrani v krom spremenljivka.

Vrstica 17 naloži pageUrl v brskalniku.

Vrstica 19 ustvari pot do slike, kamor se posname posnetek zaslona, ​​in shrani sliko v outputImage spremenljivka.

Vrstica 20 posname posnetek zaslona okna brskalnika in ga shrani na pot outputImage.

Vrstica 21 zapre brskalnik.

Vrstica 22 na konzolo natisne smiselno sporočilo in konča zanko.

Nato se zanka znova začne z naslednjo ločljivostjo zaslona (i.e., naslednji element seznama).

Nato zaženite ex02.py Python skript, kot sledi:

$ python3 ex02.py

Skript Python ex02.py naj posname posnetke zaslona določenega URL-ja v vsaki od izbranih ločljivosti zaslona.

Posnetek zaslona w3šole.com v širini 320 slikovnih pik.

Posnetek zaslona w3šole.com v širini 500 slikovnih pik.

Posnetek zaslona w3šole.com v širini 720 slikovnih pik.

Posnetek zaslona w3šole.com v širini 1366 slikovnih pik.

Posnetek zaslona w3šole.com v širini 1920 slikovnih pik.

Če primerjate posnetke zaslona, ​​boste videli, da se uporabniški vmesnik spreminja s širino okna brskalnika. S pomočjo funkcije zaslona Selenium lahko hitro in enostavno vidite, kako je videti vaše spletno mesto v različnih ločljivostih zaslona.

Zaključek

Ta članek vam je pokazal nekaj osnov snemanja posnetkov zaslona s pomočjo selena ter spletnih gonilnikov Chrome in Firefox. Članek vam je tudi pokazal, kako narediti posnetke zaslona v različnih ločljivostih zaslona. To bi vam moralo pomagati pri začetku uporabe funkcije zaslona Selenium.

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...
Najboljši emulatorji igralne konzole za Linux
V tem članku bo navedena priljubljena programska oprema za emulacijo igralne konzole, ki je na voljo za Linux. Emulacija je sloj združljivosti program...