selenium python tutorial
U ovom vodiču za Selenium Python naučite kodirati i izvršiti testnu skriptu Selenium koristeći programski jezik Python u različitim web preglednicima:
Tijekom posljednjih 5 godina jezik Python pokazao je eksponencijalni rast u industriji uglavnom zato što je jednostavan i lak za učenje. Selen je jedan od najčešće korištenih alata za ispitivanje automatizacije otvorenog koda.
Sada razmislite o kombiniranju selena s Pythonom i zamislite koliko robustan okvir za automatizaciju može postati.
kako ažurirati bios na Windows 10
Preporučena literatura => Piton , Selen
U ovom uputstvu naučit ćemo kako instalirati Python, povezujući Selenium knjižnice s Pythonom, kako instalirati i konfigurirati PyCharm IDE. Na kraju ovog vodiča moći ćete kodirati i izvršiti testnu skriptu Selenium koristeći programski jezik Python u različitim web preglednicima.
Što ćete naučiti:
- Instalacija Pythona
- Instalirajte selenske knjižnice s Pythonom
- Što je PIP
- Preuzmite i instalirajte Python IDE
- Konfiguracija selena u PyCharmu
- Dodavanje upravljačkih programa u PyCharm
- Prvi program koji koristi selenium python
- Pokretanje programa
- Česta pitanja o selenium pythonu
- Zaključak
- Preporučena literatura
Instalacija Pythona
Instalacija Pythona prilično je jednostavna. Klik ovdje i preuzmite najnoviju verziju. Dobit će vam .exe datoteku. Instalirajte sa svim zadanim postavkama.
>> Kliknite ovdje za detaljne pojedinosti o postupku instalacije.
Instalirajte selenske knjižnice s Pythonom
Kada instalirate Python, knjižnice Selenium se ne instaliraju prema zadanim postavkama. No, da biste provjerili jesu li knjižnice Selenium već prisutne u vašem Pythonu, otvorite naredbeni redak i pomaknite se do staze na kojoj ste instalirali Python i upišite “ pip lista “. Ova naredba će navesti sve knjižnice trenutno dostupne u vašem Pythonu.
Što je PIP
PIP je skraćenica od Preferred Installer Program. Popularni upravitelj paketa koristi se za instaliranje softverskih paketa napisanih na Pythonu. PIP se prema zadanim postavkama instalira zajedno s Pythonom. Sada da bismo povezali / instalirali sve potrebne Selenium biblioteke s Pythonom, moramo izvršiti naredbu
pip instalirati Selen
Jednom kada izvršite naredbu, selenium knjižnice će se preuzeti i instalirati.
Sada provjerite selenske knjižnice pomoću pip lista naredba.
Preuzmite i instalirajte Python IDE
Za pisanje i izvršavanje skripti ili programa potreban nam je IDE. Stoga odabir istog postaje vrlo važan. PyCharm je jedan od najpoželjnijih IDE-a, posebno za jezik Python. Za preuzimanje PyCharma kliknite ovdje i preuzmite izdanje zajednice koje je besplatno i otvoreno.
(slika izvor )
Dobit će vam .exe datoteku. Samo naprijed i instalirajte sa svim zadanim postavkama.
Konfiguracija selena u PyCharmu
Kad je instalacija uspješna, idite na pretraživanje prozora i upišite PyCharm i trebali biste vidjeti izdanje zajednice PyCharm, kao što je prikazano na donjoj slici. Kliknite na nju da otvorite PyCharm.
Prije pisanja bilo kojeg koda prvo moramo konfigurirati Selenium knjižnice u PyCharmu.
Postoje 2 načina za konfiguriranje selena za projekt u PyCharmu. To su kako slijedi:
# 1) Korištenje dostupne opcije Paketi u PyCharmu.
Kad prvi put otvorite PyCharm, otvorit će se prozor Stvaranje novog projekta.
Kliknite Stvori novi projekt. Prema zadanim postavkama, naziv projekta se uzima kao nenaslovljen. Unesite odgovarajući naziv projekta. Kliknite Stvori.
Bilješka: Možete promijeniti mjesto projekta.
Vaš projekt će biti uspješno stvoren. Da biste provjerili jesu li knjižnice Selenium konfigurirane, idite na Datoteka -> Postavke . Na stranici za postavljanje idite na Projekt -> Projektni tumač .
Ispod paketa trebali biste vidjeti paket Selenium. Ako to nedostaje, pritisnite na ' + Gumb 'u desnom kutu. U okviru dostupnih paketa potražite Selenium i pritisnite Install Package. Sada provjerite je li instaliran paket Selenium.
# 2) Korištenje opcije Nasljeđivanje od globalnih web-paketa
Ova metoda je prilično jednostavna. Ići Datoteka-> Novi projekt . Tijekom stvaranja novog projekta odaberite „ Naslijedite globalne web-pakete ”Potvrdni okvir. Nakon izrade projekta, idite na Datoteka -> Postavke -> Projekt -> Projektni tumač , moći ćete vidjeti već instaliran paket Selenium.
Dodavanje upravljačkih programa u PyCharm
Da bismo automatizirali bilo koju web aplikaciju trebamo imati web preglednik i uputiti na kojem pregledniku izvršavati skripte, trebaju nam upravljački programi za taj određeni preglednik. Dostupni su svi upravljački programi web preglednika ovdje . Otvorite web stranicu i idite na Preglednici.
Kliknite na dokumentacija za potrebne preglednike i odaberite stabilnu verziju upravljačkog programa.
Da biste preuzeli Chrome : Dođite do Chromeove dokumentacije i kliknite na 'Trenutno stabilno izdanje' pod 'Sve verzije dostupne u preuzimanjima' i preuzmite zip datoteku koja odgovara vašem OS-u.
Primjer: “Chromedriver_win32.zip” za Windows.
Da biste preuzeli Firefox: Dođite do Firefoxove dokumentacije, kliknite izdanja geckodrivera i pomaknite se prema dolje da biste pronašli upravljačke programe za sve operativne sustave.
Primjer: za Windows 64 odaberite geckodriver-v0.26.0-win64.zip.
Da biste preuzeli Microsoft Edge: Idite na Edge dokumentaciju. Ovo će izravno otvoriti stranicu upravljačkog programa u odjeljku Preuzimanja. Primjer: x64 za 64-bitni OS Windows
Prvi program koji koristi selenium python
Sada je PyCharm spreman prihvatiti i izvršiti selenijski kod. Samo da bismo bili dobro organizirani, stvorit ćemo 2 direktorija (direktorij je sličan mapi). Upotrijebit ćemo jedan direktorij za postavljanje svih testnih skripti, nazovimo ga 'Glavni', a drugi direktorij za smještanje svih upravljačkih programa web preglednika, nazovimo ga 'Vozač'.
Desnom tipkom miša kliknite projekt i izradite novi direktorij kao što je prikazano na donjoj slici:
U glavnom direktoriju stvorite novu datoteku Python. Ovo će stvoriti .py datoteku i otvoriti uređivač.
Sada kopirajte izvađeni .exe upravljački program, za primjer, Chromedriver.exe i zalijepite datoteku u direktorij Upravljački programi.
Sada smo spremni napisati svoj prvi automatizacijski kod pomoću Selenium Webdriver s Pythonom.
Prvo definirajmo korake koje treba postići automatizacijom u donjoj tablici.
char u niz c ++
Korak | Akcijski | očekivani rezultat |
---|---|---|
7 | Unesite korisničko ime i lozinku | Korisničko ime i lozinka trebaju biti prihvaćeni |
1 | Otvorite preglednik Chrome | Preglednik Chrome trebao bi se uspješno pokrenuti |
dva | Idite na www.google.com | Treba otvoriti Google web stranicu |
3 | Povećajte prozor preglednika | Prozor preglednika treba maksimizirati |
4 | Unesite prijavu na LinkedIn u Google tekstualno polje | Treba unijeti točan tekst |
5 | Pritisnite tipku Enter | Stranica za pretraživanje trebala bi se prikazati s odgovarajućim rezultatom |
6 | Kliknite URL za prijavu na LinkedIn | Trebala bi se pojaviti stranica za prijavu na LinkedIn |
8 | Kliknite gumb Prijava | Treba prikazati početnu stranicu LinkedIn-a |
9 | Provjerite naslov stranice | LinkedIn bi trebao biti prikazan na konzoli |
10 | Potvrdite trenutni URL stranice | https://www.linkedin.com/feed/ trebao bi biti prikazan na konzoli |
jedanaest | Zatvorite preglednik | Prozor preglednika treba zatvoriti |
Da bismo postigli gore spomenuti scenarij, upotrijebit ćemo neke od često korištenih naredbi Selenium Python.
Selen.Webdriver paket pruža sve implementacije Webdrivera. Dakle, trebamo uputiti Pythona da uveze Webdriver iz selena. Klasa Keys omogućuje nam upotrebu tipki na tipkovnici poput ENTER, ALT itd.
from selenium import Webdriver from selenium.webdriver.common.keys import Keys
# 1) Otvorite preglednik Chrome
Da bismo otvorili bilo koji preglednik, moramo stvoriti primjerak tog određenog preglednika. U ovom primjeru stvorimo instancu Chrome Webdriver i spomenimo i lokaciju Chromedriver.exe. Prije malo vremena preuzeli smo i izvadili sve upravljačke programe preglednika i smjestili ih u direktorij upravljačkih programa u našem PyCharmu.
Desnom tipkom miša kliknite Chromedriver.exe i Kopirajte apsolutni put i zalijepite naredbu Webdriver kako je dano dolje.
driver = Webdriver.chrome('C:UsersAdminPyCharmProjectsSeleniumTestDriverschromedriver.exe')
# 2) Idite na www.google.com
The vozač.dobiti metoda prijeći će na stranicu koju spominje URL. Morate navesti puni URL.
Primjer: https://www.google.com
driver.get('https://www.google.com/')
# 3) Povećajte prozor preglednika
driver.maximize_window maksimizira prozor preglednika
driver.maximize_window()
# 4) Unesite prijavu na LinkedIn u Google tekstualno polje
Da bismo pretraživali prijavu na LinkedIn, prvo moramo identificirati Googleov tekstni okvir za pretraživanje. Selen nudi razne strategije za lociranje elemenata na stranici.
>> Pogledajte ovdje za više detalja o lokatorima Selenium WebDriver.
do) Idite na veza
b) Desnom tipkom miša kliknite tekstni okvir za pretraživanje i odaberite element inspect.
c) Imamo polje imena koje ima jedinstvenu vrijednost 'q'. Pa ćemo koristiti find_element_by_name locator za prepoznavanje okvira za pretraživanje pretraživanja.
d) tipke_poslati funkcija omogućit će nam unos bilo kojeg teksta. Primjer: “LinkedIn prijava”
je) Idite na Pycharm i unesite sljedeću naredbu:
driver.find_element_by_name('q').send_keys('LinkedIn Login')
# 5) Pritisnite tipku Enter
Da bismo došli do stranice rezultata pretraživanja, moramo kliknuti gumb Google pretraživanja ili pritisnuti tipku Enter na tipkovnici. U ovom ćemo primjeru istražiti kako pritisnuti tipku Enter pomoću naredbi. Ključevi.Unesite naredba će vam pomoći pritisnuti tipku Enter na tipkovnici.
driver.find_element_by_name('q').send_keys(Keys.Enter )
# 6) Kliknite URL za prijavu na LinkedIn
Nakon što dođemo na stranicu rezultata pretraživanja, moramo kliknuti vezu LinkedIn Login. Koristit ćemo find_element_by_partial_link_text da se to postigne.
driver.find_element_by_partial_link_text('LinkedIn Login').click()
# 7) Unesite korisničko ime i lozinku
Polja Korisničko ime i Lozinka imaju jedinstvene vrijednosti ID-a i za unos polja koriste tipke send_keys.
driver.find_element_by_id('username').send_keys('enter your username') driver.find_element_by_id('password').send_keys('enter your password”)
# 8) Kliknite gumb Prijava
Prijava je jedini gumb dostupan na stranici. Tako da možemo koristiti lokator naziva oznaka za identifikaciju. find_element_by_tag_name.
driver.find_element_by_tag_name('button').click()
# 9) Provjerite naslov stranice
Driver.title dohvatit će naslov stranice, a naredba print ispisat će naslov web stranice na konzoli. Obavezno koristite zagrade ().
print(driver.title)
# 10) Potvrdite trenutni URL stranice
The vozač.struja_url dohvatit će URL stranice. ispis izvest će trenutni URL na konzoli.
print(driver.current_url)
# 11) Zatvorite preglednik
Napokon, prozor preglednika je zatvoren vozač.zatvorite .
driver.close()
Kompletna testna skripta data je u nastavku:
from selenium import webdriver from selenium.webdriver.common.keys import Keys Import time driver = webdriver.Chrome(r'C:UsersAdminPycharmProjectsSeleniumTestDriverschromedriver.exe') driver.get('https://www.google.com/') driver.maximize_window() driver.find_element_by_name('q').send_keys('LinkedIn login') driver.find_element_by_name('q').send_keys(Keys.ENTER) driver.find_element_by_partial_link_text('LinkedIn Login').click() driver.find_element_by_id('username').send_keys('enter your username') driver.find_element_by_id('password').send_keys('enter your password”) driver.find_element_by_tag_name('button').click() time.sleep(5) print(driver.title) print(driver.current_url) driver.close(
Bilješka: # se koristi za komentiranje retka.
time.sleep (sec) koristi se za odgodu izvršavanja sljedećeg retka.
Pokretanje programa
Postoji više načina za izvršavanje programa
# 1) Pokrenite pomoću PyCharm IDE
Ovo je ravno naprijed. Nakon što dovršite kodiranje, možete desnom tipkom miša kliknuti na uređivač i pritisnuti Run 'Naziv programa' ili tipku prečaca Ctrl + Shift + F10.
Nakon izvršenja, rezultat će biti prikazan na donjoj konzoli. Sada nam omogućuje pokretanje uzorka koda i provjeru rezultata.
Sintaksna pogreška - Unicode pogreška
Nakon pokretanja koda, u konzoli dobivamo sljedeću pogrešku.
Pokušajmo riješiti isto. Problem je u putu upravljačkog programa Chrome. C: Users Admin PyCharmProjects SeleniumTest Drivers chromedriver.exe
U u C: Korisnici postaju Unicode znak i tako se U pretvara u Unicode izlazni znak i time put postaje nevaljanim. Postoje 2 načina da se to riješi.
#A) Dodajte dodatne kose crte
driver = Webdriver.chrome('C:\Users\Admin\PyCharmProjects\SeleniumTest\Drivers\chromedriver.exe')
#B) Prefiksujte niz sa r:
Zbog toga će se niz tretirati kao sirovi niz, a Unicode znakovi neće se uzimati u obzir
driver = Webdriver.chrome(r'C:UsersAdminPyCharmProjectsSeleniumTestDriversChromedriver.exe')
TypeError: objekt modula se ne može pozvati
Izvršite kod još jednom. Sada imamo drugačiju pogrešku u konzoli.
Razlog je kad pišete Webdriver . Prikazane su 2 opcije krom (Selenium Webdriver ) i Chrome (Selenium.Webdriver.Chrome.Webdriver) kako je prikazano dolje.
Trebali bismo odabrati Chrome (Selenium.Webdriver.Chrome.Webdriver), ako odaberete prethodnu opciju, na kraju ćete dobiti pogrešku na gornjoj snimci zaslona.
Ajmo sada pokrenuti skriptu još jednom. Ovaj put se uspješno pokrenuo i na konzolu ispisao naslov i trenutni URL web stranice.
world of warcraft najbolji privatni poslužitelj
Bilješka: Ako i dalje naiđete na problem. Pokušajte sa sljedećom naredbom:
driver = Webdriver.Chrome(executable_path= 'C:\Users\Admin\PyCharmProjects\SeleniumTest\Drivers\chromedriver.exe')
# 2) Pokretanje skripte u različitim preglednicima:
Da biste pokrenuli istu skriptu u bilo kojem drugom pregledniku, samo trebate stvoriti instancu tog određenog preglednika umjesto Chromea u gornjem primjeru koda.
Primjer za preglednik Firefox: Zamijenite Chrome Firefoxom kako je prikazano dolje:
driver = Webdriver.Firefox(executable_path='C:\Users\Admin\PyCharmProjects\SeleniumTest\Drivers\geckodriver.exe')
Za preglednik Microsoft Edge zamijenite Chrome Edgeom kako je prikazano dolje:
driver = Webdriver.Edge(executable_path='C:\Users\Admin\PyCharmProjects\SeleniumTest\Drivers\msedgedriver.exe')
# 3) Pokretanje skripte u naredbenom retku:
Desnom tipkom miša kliknite direktorij u kojem ste napisali kod. Primjer: 'Main', a zatim kopirajte apsolutni put. Otvorite naredbeni redak i promijenite direktorij u direktorij Python naredbom 'cd' i kliknite desnu tipku miša. Nakon što se direktorij promijeni, unesite Python 'naziv programa'.
Python FirstTest.py
Izvršit će kôd, a rezultat će biti prikazan u naredbenom retku.
Česta pitanja o selenium pythonu
P # 1) Za što se koristi Selenium Python?
Odgovor: Veliki broj programera počeo je koristiti Selenium s Pythonom za automatizaciju ispitivanja. Dolje spomenuti nekoliko je razloga:
- Za testiranje web aplikacija, Selenium je najčešće korišteni alat za automatizaciju koji nudi razne funkcije. Te su funkcije izrađene kako bi udovoljile zahtjevima testa web aplikacija.
- Python jezik stječe veliku popularnost jer ima manje problema sa sintaksom i može se kodirati jednostavnom ključnom riječi.
- Selenium šalje standardne naredbe Pythona različitim preglednicima, bez obzira na dizajn preglednika.
- Vezivanje Pythona i Selena pruža razne API-je koji pomažu u pisanju funkcionalnih testova.
- I Selenium i Python su otvoreni kod. Tako ga svatko može lako preuzeti i koristiti u bilo kojem okruženju.
P # 2) Kako mogu otvoriti Chrome u programu Selenium Python?
Odgovor: Preuzmite upravljački program za Chrome s ovdje i izdvojite .exe datoteku. Navedite puni put .exe datoteke tijekom stvaranja instance Chrome Webdrivera.
driver = Webdriver.Chrome('C:\Users\Admin\PyCharmProjects\SeleniumTest\Drivers\Chromedriver.exe')
P # 3) Kako popraviti Unicode pogrešku u Pythonu?
Odgovor: Postoje 2 načina da se to riješi.
do) Bilo da trebate dodati dodatne kose crte
driver = Webdriver.Chrome('C:\Users\Admin\PyCharmProjects\SeleniumTest\Drivers\Chromedriver.exe')
b) Prefiksuj niz sa r. Zbog toga će se niz tretirati kao sirovi niz, a Unicode znakovi neće se uzimati u obzir.
driver = Webdriver.Chrome(r'C:UsersAdminPyCharmProjectsSeleniumTestDriversChromedriver.exe')
P # 4) Kako pokrenuti Firefox u selenium pythonu?
Odgovor: Preuzmite Firefox geckodriver sa ovdje i izdvojite .exe datoteku. Navedite puni put .exe datoteke tijekom stvaranja instance Firefox Webdriver.
driver = Webdriver.Firefox(executable_path='C:\Users\Admin\PyCharmProjects\SeleniumTest\Drivers\geckodriver.exe'). driver.get(“ https://www.google.com ”)
Ovo će otvoriti google web stranicu u pregledniku Firefox
P # 5) Kako mogu dobiti selenij za Python?
Odgovor: Nakon instalacije Pythona, otvorite naredbeni redak i promijenite direktorij u mapu u kojoj je prisutan Python i izvršite pip install Selenium. To će dodati najnovije selenium knjižnice u Python.
C: Users Admin AppData Local Programs Python Python38-32> pip instalirajte Selenium.
Biblioteke Selenium možete pronaći u mapi Lib site-paketi u Pythonu.
Zaključak
U ovom uputstvu naučili smo osnove potrebne za početak pisanja skripte pomoću jezika Selenium Webdriver i Python. Dolje su navedene suštine ovog vodiča:
- Python i Selenium pokazali su se najpopularnijim programerima. Stoga postoji puno pratećih dokumenata dostupnih za iste.
- Vezivanje biblioteka Selenium s Pythonom može se izvršiti samo jednom naredbom pip install Selenium.
- PyCharm je najčešće korišten IDE, posebno za jezik Python. Izdanje Zajednice potpuno je besplatno za upotrebu. Nadalje, na raspolaganju ima puno paketa koji će vam pomoći u pisanju funkcionalnih testova, a instalacija je vrlo jednostavna.
- Također smo naučili kako preuzeti različite upravljačke programe preglednika i dodati ih u testne skripte u PyCharmu kako bismo mogli testirati našu aplikaciju u navedenom pregledniku.
- Naučili smo različite naredbe Selenium pomoću kojih možemo lako automatizirati funkcionalnosti web aplikacija.
- Također smo pokrenuli testnu skriptu na IDE-u i naredbenom retku.
Preporučena literatura
- Vodič za Python za početnike (Praktični BESPLATNI trening za Python)
- Vodič za selen python za početnike
- Uvod u Selenium WebDriver - Vodič za selen br. 8
- 30+ najboljih vodiča za selen: naučite selen na stvarnim primjerima
- Implementacija naše prve skripte WebDriver - Vodič br. 10 za Selenium WebDriver
- Vodič za krastavac selenij: Integracija Java Selenium WebDriver krastavaca
- Python DateTime Vodič s primjerima
- Python string funkcije