Paano Makukuha ang Kasalukuyang URL sa Selenium

How Get Current Url With Selenium



Ang siliniyum ay isang tool para sa pagsubok ng browser, pag-automate ng web, at pag-scrap ng web. Habang nagtatrabaho sa iyong mga proyekto sa Selenium, maaaring kailangan mong malaman ang URL ng pahina na ipinapakita ang iyong kontroladong web browser ng Selenium. Maaaring maging kapaki-pakinabang ang impormasyong ito upang subaybayan ang URL mula sa kung saan ka kumuha ng ilang data upang maaari mong awtomatikong ma-update ang data gamit ang ilang script.

Sa artikulong ito, ipapakita ko sa iyo kung paano makukuha ang kasalukuyang URL ng browser gamit ang Selenium. Kaya, magsimula na tayo.







Mga Pangangailangan:

Upang subukan ang mga utos at halimbawa ng artikulong ito, dapat mayroon ka,



1) Isang pamamahagi ng Linux (mas mabuti ang Ubuntu) na naka-install sa iyong computer.
2) Na-install ang Python 3 sa iyong computer.
3) naka-install na PIP 3 sa iyong computer.
4) Python virtualenv naka-install na package sa iyong computer.
5) Ang mga browser ng Mozilla Firefox o Google Chrome na naka-install sa iyong computer.
6) Dapat malaman kung paano i-install ang Firefox Gecko Driver o Chrome Web Driver.



Para sa pagtupad sa mga kinakailangan 4, 5, at 6, mangyaring basahin ang aking artikulo Panimula sa Selenium na may Python 3 sa Linuxhint.com.





Maaari kang makahanap ng maraming mga artikulo sa iba pang mga paksa sa LinuxHint.com . Tiyaking suriin ang mga ito kung kailangan mo ng anumang tulong.

Pagse-set up ng isang Direktoryo ng Proyekto:

Upang panatilihing maayos ang lahat, lumikha ng isang bagong direktoryo ng proyekto siliniyum-url / tulad ng sumusunod:



$mkdir -pvselenium-url/mga driver

Mag-navigate sa siliniyum-url / direktoryo ng proyekto tulad ng sumusunod:

$CDselenium-url/

Lumikha ng isang virtual na kapaligiran ng Python sa direktoryo ng proyekto tulad ng sumusunod:

$virtualenv .venv

Isaaktibo ang virtual na kapaligiran tulad ng sumusunod:

$pinagmulan.venv/am/buhayin

I-install ang silid-aklatan ng Selenium Python sa iyong virtual na kapaligiran gamit ang PIP3 tulad ng sumusunod:

$ pip3 i-install ang siliniyum

Mag-download at mag-install ng lahat ng kinakailangang mga driver ng web sa mga driver / direktoryo ng proyekto. Ipinaliwanag ko ang proseso ng pag-download at pag-install ng mga web driver sa aking artikulo Panimula sa Selenium na may Python 3 . Kung kailangan mo ng anumang tulong, maghanap sa LinuxHint.com para sa artikulong iyon

Gagamitin ko ang web browser ng Google Chrome para sa pagpapakita sa artikulong ito. Kaya, gagamitin ko ang chromedriver binary na may Selenium. Dapat mong gamitin ang tsekko driver binary kung nais mong gamitin ang Firefox web browser.

Lumikha ng isang script ng Python ex01.py sa iyong direktoryo ng proyekto at i-type ang mga sumusunod na linya ng mga code dito.

mula sasiliniyumangkatwebdriver
mula sasiliniyumwebdriver.pangkaraniwan.mga susi angkatMga susi
mga pagpipilian=webdriver.Mga Opsyon ng Chrome()
mga pagpipilianwalang ulo = Totoo
browser=webdriver.Chrome(maipapatupad na_path='./drivers/chromedriver',mga pagpipilian=mga pagpipilian)
browserkumuha ka('https://duckduckgo.com/')
mag-print(browserkasalukuyang_url)
browsermalapit na()

Kapag tapos ka na, i-save ang ex01.py Python script.

Dito, i-import ng linya 1 at linya 2 ang lahat ng kinakailangang mga sangkap mula sa silid-silid ng Python selenium.

Lumilikha ang Line 4 ng isang object ng Mga Pagpipilian ng Chrome, at ang linya 5 ay nagbibigay-daan sa mode na walang ulo para sa web browser ng Chrome.

Lumilikha ang Line 7 ng isang Chrome browser bagay gamit ang chromedriver binary mula sa mga driver / direktoryo ng proyekto.

Sinasabi ng Line 9 sa browser na mai-load ang website ng duckduckgo.com.

Ang linya 10 ay naglilimbag ng kasalukuyang URL ng browser. Dito, browser.current_url ginagamit ang pag-aari upang ma-access ang kasalukuyang URL ng browser.

Isinasara ng linya 12 ang browser.

Patakbuhin ang script ng Python ex01.py tulad ng sumusunod:

$ python3 ex01.py

Tulad ng nakikita mo, ang kasalukuyang URL ( https://duckduckgo.com ) ay nakalimbag sa console.

Sa naunang halimbawa, nabisita ko ang website duckduckgo.com at nai-print ang kasalukuyang URL sa console. Ibinabalik nito ang URL ng pahina na aming binibisita. Hindi masyadong magarbong bilang alam na natin ang URL ng pahina. Ngayon, maghanap tayo para sa isang bagay sa DuckDuckGo at subukang i-print ang URL ng pahina ng resulta ng paghahanap sa console.

Lumikha ng isang script ng Python ex02.py sa iyong direktoryo ng proyekto at i-type ang mga sumusunod na linya ng mga code dito.

mula sasiliniyumangkatwebdriver
mula sasiliniyumwebdriver.pangkaraniwan.mga susi angkatMga susi
mga pagpipilian=webdriver.Mga Opsyon ng Chrome()
mga pagpipilianwalang ulo = Totoo
browser=webdriver.Chrome(maipapatupad na_path='./drivers/chromedriver',mga pagpipilian=mga pagpipilian)
browserkumuha ka('https://duckduckgo.com/')
mag-print(browserkasalukuyang_url)
searchInput=browserfind_element_by_id('search_form_input_homepage')
searchInput.send_keys('selenium hq'+ Mga Susi.ENTER)
mag-print(browserkasalukuyang_url)
browsermalapit na()

Kapag tapos ka na, i-save ang ex02.py Python script.

Dito, ang mga linya na 1-10 ay pareho sa ex01.py . Kaya, hindi ko na muling ipinapaliwanag ang mga ito.

Hahanapin ng linya 12 ang textbox ng paghahanap at iniimbak ito sa searchInput variable.

Ipinapadala ng linya 13 ang query sa paghahanap siliniyum hq nasa searchInput text box at pinindot ang key gamit Susi.ENTER .

Kapag nag-load na ang pahina ng paghahanap, browser.current_url ay ginagamit upang ma-access ang na-update na kasalukuyang URL.

Ang linya 15 ay naglilimbag ng na-update na kasalukuyang URL sa console.

Isinasara ng linya 17 ang browser.

Patakbuhin ang ex02.py Ang script ng Python tulad ng sumusunod:

$ python3 ex02.py

Tulad ng nakikita mo, ang script ng Python ex02.py naglilimbag ng 2 mga URL.

Ang una ay ang homepage URL ng search engine ng DuckDuckGo.

Ang pangalawa ay ang na-update na kasalukuyang URL pagkatapos magsagawa ng isang paghahanap sa search engine ng DuckDuckGo gamit ang query siliniyum hq .

Konklusyon:

Sa artikulong ito, ipinakita ko sa iyo kung paano makukuha ang kasalukuyang URL ng web browser gamit ang silid ng silid ng Selenium Python. Ngayon, dapat mong gawin ang iyong mga proyekto sa Selenium na mas kawili-wili.