Šiame straipsnyje aš jums parodysiu, kaip gauti dabartinį naršyklės URL naudojant „Selenium“. Taigi, pradėkime.
Būtinos sąlygos:
Norėdami išbandyti šio straipsnio komandas ir pavyzdžius, turite,
1) „Linux“ paskirstymas (pageidautina „Ubuntu“), įdiegtas jūsų kompiuteryje.
2) „Python 3“ įdiegtas jūsų kompiuteryje.
3) PIP 3 įdiegtas jūsų kompiuteryje.
4) „Python“ virtualenv paketą, įdiegtą jūsų kompiuteryje.
5) „Mozilla Firefox“ arba „Google Chrome“ žiniatinklio naršyklės, įdiegtos jūsų kompiuteryje.
6) Turi žinoti, kaip įdiegti „Firefox Gecko“ tvarkyklę arba „Chrome“ žiniatinklio tvarkyklę.
Norėdami įvykdyti 4, 5 ir 6 reikalavimus, perskaitykite mano straipsnį Įvadas į seleną su „Python 3“ „Linuxhint“.com.
„LinuxHint“ galite rasti daug straipsnių kitomis temomis.com. Jei jums reikia pagalbos, būtinai patikrinkite juos.
Projektų katalogo nustatymas:
Kad viskas būtų tvarkinga, sukurkite naują projekto katalogą selenas-url / taip:
$ mkdir -pv selenium-url / tvarkyklės
Eikite į selenas-url / projekto katalogą taip:
$ cd selenas-URL /
Projekto kataloge sukurkite virtualią „Python“ aplinką taip:
$ virtualenv .venv
Suaktyvinkite virtualią aplinką taip:
$ šaltinis .venv / bin / aktyvuoti
Įdiekite „Selenium Python“ biblioteką į virtualią aplinką naudodami PIP3 taip:
$ pip3 įdiekite seleną
Atsisiųskite ir įdiekite visas reikalingas žiniatinklio tvarkykles vairuotojai / projekto katalogas. Savo straipsnyje paaiškinau žiniatinklio tvarkyklių atsisiuntimo ir diegimo procesą Įvadas į seleną su „Python 3“. Jei jums reikia pagalbos, ieškokite toliau „LinuxHint“.com už tą straipsnį.
Šiame straipsnyje demonstravimui naudosiu „Google Chrome“ žiniatinklio naršyklę. Taigi, aš naudosiu chromedriver dvejetainis su selenu. Turėtumėte naudoti gekodriveris dvejetainis, jei norite naudoti „Firefox“ žiniatinklio naršyklę.
Kaip gauti dabartinį URL su selenu:
Sukurkite „Python“ scenarijų ex01.py savo projekto kataloge ir įveskite toliau nurodytas kodų eilutes.
iš seleno importo žiniatinklio tvarkyklėsiš seleno.žiniatinklio tvarkyklė.paplitęs.raktai importuoja raktus
parinktys = žiniatinklio tvarkyklė.„Chrome“ parinktys ()
galimybės.be galvos = Tiesa
naršyklė = žiniatinklio tvarkyklė.„Chrome“ (vykdomojo_ kelias = "./ tvarkyklės / chromedriver ", parinktys = parinktys)
naršyklė.gauti ("https: // duckduckgo.com / ")
spausdinti (naršyklė.dabartinis_url)
naršyklė.Uždaryti()
Kai baigsite, išsaugokite ex01.py „Python“ scenarijus.
Čia 1 ir 2 eilutės importuoja visus reikiamus komponentus iš „Python selenium“ bibliotekos.
4 eilutė sukuria „Chrome“ parinkčių objektą, o 5 eilutė įgalina „Chrome“ žiniatinklio naršyklės režimą be galvos.
7 eilutė sukuria „Chrome“ naršyklė objektas naudojant chromedriver dvejetainis iš vairuotojai / projekto katalogas.
9 eilutė nurodo naršyklei įkelti duckduckgo.com svetainė.
10 eilutėje spausdinamas dabartinis naršyklės URL. Čia, naršyklė.current_url ypatybė naudojama norint pasiekti dabartinį naršyklės URL.
12 eilutė uždaro naršyklę.
Paleiskite „Python“ scenarijų ex01.py taip:
$ python3 ex01.py
Kaip matote, dabartinis URL (https: // duckduckgo.com) atspausdintas ant konsolės.
Ankstesniame pavyzdyje aplankiau svetainę duckduckgo.lt ir atspausdino dabartinį URL konsolėje. Tai grąžina lankomo puslapio URL. Nelabai puošnus, nes mes jau žinome puslapio URL. Dabar ieškokime kažko „DuckDuckGo“ ir pabandykime konsolėje atsispausdinti paieškos rezultatų puslapio URL.
Sukurkite „Python“ scenarijų ex02.py savo projekto kataloge ir įveskite toliau nurodytas kodų eilutes.
iš seleno importo žiniatinklio tvarkyklėsiš seleno.žiniatinklio tvarkyklė.paplitęs.raktai importuoja raktus
parinktys = žiniatinklio tvarkyklė.„Chrome“ parinktys ()
galimybės.be galvos = Tiesa
naršyklė = žiniatinklio tvarkyklė.„Chrome“ (vykdomojo_ kelias = "./ tvarkyklės / chromedriver ", parinktys = parinktys)
naršyklė.gauti ("https: // duckduckgo.com / ")
spausdinti (naršyklė.dabartinis_url)
searchInput = naršyklė.find_element_by_id ('search_form_input_homepage')
searchInput.send_keys ('selenium hq' + raktai.ENTER)
spausdinti (naršyklė.dabartinis_url)
naršyklė.Uždaryti()
Kai baigsite, išsaugokite ex02.py „Python“ scenarijus.
Čia 1-10 eilutės yra tokios pačios kaip ir ex01.py. Taigi, aš jų daugiau nebeaiškinu.
12 eilutėje surandamas paieškos teksto laukelis ir jis išsaugomas searchInput kintamasis.
13 eilutė siunčia paieškos užklausą seleno hq viduje konors searchInput teksto laukelį ir paspaudžia
Įkėlus paieškos puslapį, naršyklė.current_url naudojamas norint pasiekti atnaujintą dabartinį URL.
15 eilutė atspausdina atnaujintą dabartinį URL konsolėje.
17 eilutė uždaro naršyklę.
Paleiskite ex02.py „Python“ scenarijus taip:
$ python3 ex02.py
Kaip matote, „Python“ scenarijus ex02.py išspausdina 2 URL.
Pirmasis yra „DuckDuckGo“ paieškos sistemos pagrindinio puslapio URL.
Antrasis yra atnaujintas dabartinis URL atlikus paiešką „DuckDuckGo“ paieškos sistemoje naudojant užklausą seleno hq.
Išvada:
Šiame straipsnyje aš parodžiau, kaip gauti dabartinį žiniatinklio naršyklės URL naudojant „Selenium Python“ biblioteką. Dabar turėtumėte sugebėti padaryti savo „Selenium“ projektus įdomesnius.