Selen

Jak získat aktuální adresu URL se selenem

Jak získat aktuální adresu URL se selenem
Selen je nástroj pro testování prohlížečů, automatizaci webu a škrábání webu. Při práci na projektech se selenem možná budete potřebovat znát adresu URL stránky, kterou zobrazuje váš webový prohlížeč se selenem. Tyto informace mohou být užitečné pro sledování adresy URL, ze které jste extrahovali některá data, abyste mohli data automaticky aktualizovat pomocí nějakého skriptu.

V tomto článku vám ukážu, jak získat aktuální adresu URL prohlížeče se selenem. Pojďme tedy začít.

Předpoklady:

Chcete-li vyzkoušet příkazy a příklady tohoto článku, musíte mít,

1) Ve vašem počítači je nainstalována distribuce Linuxu (nejlépe Ubuntu).
2) Python 3 nainstalovaný ve vašem počítači.
3) PIP 3 nainstalovaný ve vašem počítači.
4) Python virtuální balíček nainstalovaný v počítači.
5) Ve vašem počítači jsou nainstalovány webové prohlížeče Mozilla Firefox nebo Google Chrome.
6) Musíte vědět, jak nainstalovat ovladač Firefox Gecko nebo webový ovladač Chrome.

Pro splnění požadavků 4, 5 a 6 si prosím přečtěte můj článek Úvod do selenu v Pythonu 3 ve službě Linuxhint.com.

Na LinuxHint najdete mnoho článků o dalších tématech.com. Nezapomeňte je zkontrolovat, pokud potřebujete pomoc.

Nastavení adresáře projektu:

Chcete-li mít vše uspořádané, vytvořte nový adresář projektu selen-url / jak následuje:

$ mkdir -pv selenium-url / ovladače

Přejděte na selen-url / adresář projektu takto:

$ cd selen-url /

Vytvořte virtuální prostředí Pythonu v adresáři projektu následujícím způsobem:

$ virtualenv .venv

Aktivujte virtuální prostředí následujícím způsobem:

$ zdroj .venv / bin / aktivovat

Nainstalujte knihovnu Selenium Python do svého virtuálního prostředí pomocí PIP3 následujícím způsobem:

$ pip3 nainstalujte selen

Stáhněte a nainstalujte všechny požadované webové ovladače v Řidiči/ adresář projektu. Proces stahování a instalace webových ovladačů jsem vysvětlil ve svém článku Úvod do selenu v Pythonu 3. Pokud potřebujete pomoc, hledejte na LinuxTip.com pro tento článek.

Pro demonstraci v tomto článku budu používat webový prohlížeč Google Chrome. Takže budu používat chromedriver binární se selenem. Měli byste použít geckodriver binární, pokud chcete používat webový prohlížeč Firefox.

Získání aktuální adresy URL se selenem:

Vytvořte skript v Pythonu ex01.py do adresáře projektu a zadejte do něj následující řádky kódů.

z webového ovladače pro import selenu
ze selenu.webdriver.běžný.klíče importovat klíče
options = webdriver.ChromeOptions ()
možnosti.bezhlavý = pravda
prohlížeč = webdriver.Chrome (executable_path = "./ drivers / chromedriver ", options = options)
prohlížeč.get ("https: // duckduckgo.com / ")
tisk (prohlížeč.current_url)
prohlížeč.zavřít()

Až budete hotovi, uložte ex01.py Skript v Pythonu.

Zde řádek 1 a řádek 2 importují všechny požadované komponenty z knihovny selenu v Pythonu.

Řádek 4 vytváří objekt Možnosti prohlížeče Chrome a řádek 5 umožňuje bezhlavý režim pro webový prohlížeč Chrome.

Řádek 7 vytváří Chrome prohlížeč objekt pomocí chromedriver binární z Řidiči/ adresář projektu.

Řádek 9 říká prohlížeči, aby načetl duckduckgo.web com.

Řádek 10 vytiskne aktuální adresu URL prohlížeče. Tady, prohlížeč.current_url vlastnost se používá pro přístup k aktuální adrese URL prohlížeče.

Řádek 12 zavře prohlížeč.

Spusťte skript Pythonu ex01.py jak následuje:

$ python3 ex01.py

Jak vidíte, aktuální URL (https: // duckduckgo.com) je vytištěn na konzole.

V dřívějším příkladu jsem navštívil web duckduckgo.com a vytiskl aktuální adresu URL na konzoli. Tím se vrátí adresa URL stránky, kterou navštěvujeme. Není to příliš fantastické, protože adresu URL stránky již známe. Pojďme tedy něco vyhledat na DuckDuckGo a zkusme na konzole vytisknout adresu URL stránky s výsledky vyhledávání.

Vytvořte skript v Pythonu ex02.py do adresáře projektu a zadejte do něj následující řádky kódů.

z webového ovladače pro import selenu
ze selenu.webdriver.běžný.klíče importovat klíče
options = webdriver.ChromeOptions ()
možnosti.bezhlavý = pravda
prohlížeč = webdriver.Chrome (executable_path = "./ drivers / chromedriver ", options = options)
prohlížeč.get ("https: // duckduckgo.com / ")
tisk (prohlížeč.current_url)
searchInput = prohlížeč.find_element_by_id ('search_form_input_homepage')
searchInput.send_keys ('selenium hq' + klíče.ENTER)
tisk (prohlížeč.current_url)
prohlížeč.zavřít()

Až budete hotovi, uložte ex02.py Skript v Pythonu.

Zde jsou řádky 1-10 stejné jako v ex01.py. Takže je znovu nevysvětluji.

Řádek 12 najde vyhledávací textové pole a uloží jej do searchInput proměnná.

Řádek 13 odešle vyhledávací dotaz selen hq v searchInput textové pole a stiskne klíč pomocí Klíče.ENTER.

Jakmile se stránka vyhledávání načte, prohlížeč.current_url se používá pro přístup k aktualizované aktuální adrese URL.

Řádek 15 vytiskne aktualizovanou aktuální adresu URL v konzole.

Řádek 17 zavře prohlížeč.

Spusťte ex02.py Skript v Pythonu takto:

$ python3 ex02.py

Jak vidíte, skript v Pythonu ex02.py vytiskne 2 adresy URL.

První z nich je adresa URL domovské stránky vyhledávače DuckDuckGo.

Druhým z nich je aktualizovaná aktuální adresa URL po provedení vyhledávání ve vyhledávacím stroji DuckDuckGo pomocí dotazu selen hq.

Závěr:

V tomto článku jsem vám ukázal, jak získat aktuální adresu URL webového prohlížeče pomocí knihovny Selenium Python. Nyní byste měli být schopni učinit své selenové projekty zajímavějšími.

Hry Jak nainstalovat League Of Legends na Ubuntu 14.04
Jak nainstalovat League Of Legends na Ubuntu 14.04
Pokud jste fanouškem League of Legends, pak je to pro vás příležitost otestovat běh League of Legends. Všimněte si, že LOL je podporován na PlayOnLinu...
Hry Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
OpenRA je herní engine Libre / Free Real Time Strategy, který obnovuje rané hry Westwood, jako je klasický Command & Conquer: Red Alert. Distribuované...
Hry Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Emulátor Dolphin vám umožní hrát vybrané hry Gamecube a Wii na osobních počítačích se systémem Linux (PC). Jako volně dostupný herní emulátor s otevř...