Селен

Как получить текущий URL-адрес с помощью Selenium

Как получить текущий URL-адрес с помощью Selenium
Selenium - это инструмент для тестирования браузеров, веб-автоматизации и парсинга веб-страниц. Во время работы над проектами Selenium вам может потребоваться знать URL-адрес страницы, отображаемой вашим веб-браузером, контролируемым Selenium. Эта информация может быть полезна для отслеживания URL-адреса, из которого вы извлекли некоторые данные, чтобы вы могли автоматически обновлять данные с помощью некоторого скрипта.

В этой статье я покажу вам, как получить текущий URL-адрес браузера с помощью Selenium. Итак, приступим.

Предпосылки:

Чтобы опробовать команды и примеры из этой статьи, вы должны иметь,

1) Дистрибутив Linux (желательно Ubuntu), установленный на вашем компьютере.
2) Python 3 установлен на вашем компьютере.
3) PIP 3 установлен на вашем компьютере.
4) Python virtualenv пакет установлен на вашем компьютере.
5) Веб-браузеры Mozilla Firefox или Google Chrome, установленные на вашем компьютере.
6) Необходимо знать, как установить драйвер Firefox Gecko или веб-драйвер Chrome.

Для выполнения требований 4, 5 и 6 прочтите мою статью Введение в Selenium с Python 3 в Linuxhint.ком.

Вы можете найти множество статей по другим темам на LinuxHint.ком. Обязательно ознакомьтесь с ними, если вам нужна помощь.

Настройка каталога проекта:

Чтобы все было организовано, создайте новый каталог проекта селен-url / следующим образом:

$ mkdir -pv selenium-url / драйверы

Перейдите к селен-url / каталог проекта следующим образом:

$ cd selenium-url /

Создайте виртуальную среду Python в каталоге проекта следующим образом:

$ virtualenv .Venv

Активируйте виртуальную среду следующим образом:

$ источник .Venv / bin / активировать

Установите библиотеку Selenium Python в свою виртуальную среду с помощью PIP3 следующим образом:

$ pip3 установить селен

Загрузите и установите все необходимые веб-драйверы в драйверы / каталог проекта. Я объяснил процесс загрузки и установки веб-драйверов в своей статье Введение в Selenium с Python 3. Если вам нужна помощь, ищите на LinuxHint.ком для этой статьи.

Я буду использовать веб-браузер Google Chrome для демонстрации в этой статье. Итак, я буду использовать хромированная отвертка бинарный с Selenium. Вы должны использовать геккодрайвер двоичный файл, если вы хотите использовать веб-браузер Firefox.

Получение текущего URL-адреса с помощью Selenium:

Создайте скрипт Python ex01.ру в каталоге вашего проекта и введите в нем следующие строки кодов.

из selenium import webdriver
из селена.webdriver.общий.ключи импорт Ключи
options = webdriver.ChromeOptions ()
параметры.headless = Правда
браузер = веб-драйвер.Chrome (исполняемый_путь = "./ drivers / chromedriver ", options = options)
браузер.get ("https: // duckduckgo.com / ")
печать (браузер.current_url)
браузер.Закрыть()

Как только вы закончите, сохраните ex01.ру Скрипт Python.

Здесь строки 1 и строка 2 импортируют все необходимые компоненты из библиотеки селена Python.

Строка 4 создает объект параметров Chrome, а строка 5 включает безголовый режим для веб-браузера Chrome.

Строка 7 создает Chrome браузер объект, использующий хромированная отвертка двоичный из драйверы / каталог проекта.

Строка 9 сообщает браузеру загрузить duckduckgo.com веб-сайт.

Строка 10 печатает текущий URL-адрес браузера. Здесь, браузер.current_url свойство используется для доступа к текущему URL-адресу браузера.

Строка 12 закрывает браузер.

Запустите скрипт Python ex01.ру следующим образом:

$ python3 ex01.ру

Как видите, текущий URL (https: // duckduckgo.com) печатается на консоли.

В предыдущем примере я посетил сайт duckduckgo.com и напечатал текущий URL-адрес на консоли. Это возвращает URL-адрес страницы, которую мы посещаем. Не очень интересно, поскольку мы уже знаем URL-адрес страницы. Теперь давайте поищем что-нибудь на DuckDuckGo и попробуем распечатать URL-адрес страницы результатов поиска на консоли.

Создайте скрипт Python ex02.ру в каталоге вашего проекта и введите в нем следующие строки кодов.

из selenium import webdriver
из селена.webdriver.общий.ключи импорт Ключи
options = webdriver.ChromeOptions ()
параметры.headless = Правда
браузер = веб-драйвер.Chrome (исполняемый_путь = "./ drivers / chromedriver ", options = options)
браузер.get ("https: // duckduckgo.com / ")
печать (браузер.current_url)
searchInput = браузер.find_element_by_id ('search_form_input_homepage')
searchInput.send_keys ('selenium hq' + ключи.ВХОДИТЬ)
печать (браузер.current_url)
браузер.Закрыть()

Как только вы закончите, сохраните ex02.ру Скрипт Python.

Здесь строки 1-10 такие же, как в ex01.ру. Итак, я не буду их снова объяснять.

Строка 12 находит текстовое поле поиска и сохраняет его в searchInput Переменная.

Строка 13 отправляет поисковый запрос селен hq в searchInput текстовое поле и нажимает ключ с помощью Ключи.ВХОДИТЬ.

Как только страница поиска загрузится, браузер.current_url используется для доступа к обновленному текущему URL.

Строка 15 печатает обновленный текущий URL-адрес на консоли.

Строка 17 закрывает браузер.

Запустить ex02.ру Скрипт Python следующим образом:

$ python3 ex02.ру

Как видите, скрипт Python ex02.ру печатает 2 URL.

Первый - это URL-адрес домашней страницы поисковой системы DuckDuckGo.

Второй - это обновленный текущий URL после выполнения поиска в поисковой системе DuckDuckGo с использованием запроса селен hq.

Заключение:

В этой статье я показал вам, как получить текущий URL-адрес веб-браузера с помощью библиотеки Selenium Python. Теперь вы сможете сделать свои проекты на Selenium более интересными.

WinMouse позволяет настраивать и улучшать движение указателя мыши на ПК с Windows
Если вы хотите улучшить функции указателя мыши по умолчанию, используйте бесплатное ПО WinMouse. Он добавляет дополнительные функции, которые помогут ...
Левая кнопка мыши не работает в Windows 10
Если вы используете выделенную мышь со своим ноутбуком или настольным компьютером, но левая кнопка мыши не работает в Windows 10/8/7 по какой-то причи...
Курсор прыгает или перемещается случайным образом при наборе текста в Windows 10
Если вы обнаружите, что ваш курсор мыши прыгает или перемещается сам по себе, автоматически, случайным образом при вводе текста на ноутбуке или компью...