Selenium WebDriver
Selenium WebDriver — основной компонент Selenium. Он предоставляет API для взаимодействия с браузерами, позволяя разработчикам управлять браузером через языки программирования и выполнять различные операции.
Запуск браузера
Selenium WebDriver поддерживает несколько браузеров (таких как Chrome, Firefox, Edge и т. д.).
Перед запуском браузера необходимо скачать и настроить соответствующий драйвер браузера (такой как ChromeDriver, GeckoDriver и т. д.). Подробнее см.Установка Selenium。
Пример кода для запуска браузера (Python).
В Selenium 4 представлен объект Service для указания пути к драйверу. Этот подход более гибкий и соответствует спецификациям дизайна Selenium 4.
Пример для Selenium 4
from selenium.webdriver.chrome.service import Service as ChromeService
service = ChromeService(executable_path="PATH_TO_DRIVER")
options = webdriver.ChromeOptions()
driver = webdriver.Chrome(service=service, options=options)
Импортируйте необходимые модули (
webdriverиChromeService)。Создайте
ChromeServiceобъект, указывающий путь к ChromeDriver.Создайте
ChromeOptionsобъект, используемый для настройки параметров запуска браузера.Используйте
webdriver.Chrome()Запустите браузер Chrome и передайтеserviceиoptionsпараметра.
В Selenium 3 и более ранних версиях путь к драйверу обычно указывается непосредственно в webdriver.Chrome(), например:
Пример для Selenium 3
# Задать путь к ChromeDriver
driver_path = "/path/to/chromedriver"
# Запустить браузер Chrome
driver = webdriver.Chrome(executable_path=driver_path)
Закрыть браузер
Используйтеquit()метод, чтобы закрыть браузер и завершить сеанс WebDriver.
driver.quit()
Открытие и закрытие веб-страниц
Используйтеget()метод, чтобы открыть указанный URL.
driver.get("https://www.example.com")
Закрыть текущую вкладку
Используйте метод close() для закрытия текущей вкладки.
driver.close()
Если есть только одна вкладка, close() закроет браузер.
Операции с окном браузера
Развернуть окно
Используйте метод maximize_window() для максимизации окна браузера.
driver.maximize_window()
Свернуть окно
Используйте метод minimize_window() для минимизации окна браузера.
driver.minimize_window()
Задать размер окна
Используйте метод set_window_size(width, height) для установки размера окна браузера.
driver.set_window_size(1024, 768) # 设置窗口大小为 1024x768 像素
Полноэкранный режим
Используйте метод fullscreen_window() для перевода окна браузера в полноэкранный режим.
driver.fullscreen_window()
Навигация по страницам
Вперёд и назад
Используйте метод back() для возврата на предыдущую страницу.
Используйте метод forward() для перехода на следующую страницу.
driver.get("https://www.baidu.com")
driver.get("https://www.example.com")
driver.back() # 返回 baidu.com
driver.forward() # 前进到 example.com
Обновить страницу
Используйте метод refresh() для обновления текущей страницы.
driver.refresh()
Получение заголовка и URL страницы
Получить заголовок страницы
Используйте свойство title для получения заголовка текущей страницы.
title = driver.title
print("页面标题:", title)
Получить текущий URL
Используйте свойство current_url для получения URL текущей страницы.
url = driver.current_url
print("当前 URL:", url)
综合示例
Ниже приведён полный пример, демонстрирующий, как запустить браузер, открыть веб-страницу, управлять окнами, перемещаться по страницам и получать информацию о странице:
Пример
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService
# Установите правильный путь к драйверу
service = ChromeService(executable_path="./chromedriver-mac-arm64/chromedriver")
# Настройка параметров браузера
options = webdriver.ChromeOptions()
driver = webdriver.Chrome(service=service, options=options)
# Открыть веб-страницу
driver.get("https://www.example.com")
# Развернуть окно
driver.maximize_window()
# Получить заголовок и URL страницы
print("Заголовок страницы:", driver.title)
print("Текущий URL:", driver.current_url)
# Перейти на другую страницу
driver.get("https://www.jyshare.com")
# Вернуться на предыдущую страницу
driver.back()
# Обновить страницу
driver.refresh()
# Закрыть браузер
driver.quit()
После выполнения вышеуказанного кода будут выполнены следующие шаги:
Запустите браузер Chrome.
Откройте указанную веб-страницу (
https://www.example.com)。
Развернуть окно браузера.
Получите и выведите заголовок и URL страницы.
Перейдите на другую веб-страницу (
https://www.jyshare.com)。
Вернитесь на предыдущую страницу.
Обновить текущую страницу.
Закройте браузер.
Вывод:
页面标题: Example - 学的不仅是技术,更是梦想! 当前 URL: https://www.example.com/Другие расширения