📜  使用 python 控制浏览器(1)

📅  最后修改于: 2023-12-03 15:36:33.497000             🧑  作者: Mango

使用 Python 控制浏览器

Python 已经成为了一门应用非常广泛的编程语言,可以用于数据分析、Web 应用开发、游戏开发等领域。同时,Python 还可以用于控制浏览器,进行 Web 自动化测试、网站爬取等任务。本文将介绍如何使用 Python 控制浏览器。

Selenium

Selenium 是一个用于 Web 应用程序测试的工具套件,包含了多种语言的 API。在 Python 中使用 Selenium 可以实现 Web 自动化测试、模拟用户行为等任务。Selenium 使用了浏览器原生支持的 WebDriver,可以模拟真实的浏览器操作,支持 Chrome、Firefox、Safari、Edge、Opera 等主流浏览器。

安装 Selenium

使用 pip 安装 Selenium:

pip install selenium
启动浏览器

使用 Selenium 启动浏览器:

from selenium import webdriver

# 启动 Chrome 浏览器
browser = webdriver.Chrome()
# 启动 Firefox 浏览器
browser = webdriver.Firefox()
# 启动 Safari 浏览器
browser = webdriver.Safari()
# 启动 Edge 浏览器
browser = webdriver.Edge()
# 启动 Opera 浏览器
browser = webdriver.Opera()
访问网页

使用 Selenium 访问网页:

from selenium import webdriver

# 启动 Chrome 浏览器
browser = webdriver.Chrome()

# 访问百度首页
browser.get('https://www.baidu.com')
查找元素

使用 Selenium 查找 HTML 元素:

from selenium import webdriver

# 启动 Chrome 浏览器
browser = webdriver.Chrome()

# 访问百度首页
browser.get('https://www.baidu.com')

# 查找搜索框元素
input_box = browser.find_element_by_id('kw')
# 查找搜索按钮元素
search_button = browser.find_element_by_id('su')
操作元素

使用 Selenium 操作 HTML 元素:

from selenium import webdriver

# 启动 Chrome 浏览器
browser = webdriver.Chrome()

# 访问百度首页
browser.get('https://www.baidu.com')

# 查找搜索框元素
input_box = browser.find_element_by_id('kw')

# 输入搜索内容
input_box.send_keys('Python')

# 查找搜索按钮元素
search_button = browser.find_element_by_id('su')

# 点击搜索按钮
search_button.click()
等待元素出现

有时候需要等待页面加载完毕或者某个元素可见后才进行后续操作。使用 Selenium 可以实现等待:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 启动 Chrome 浏览器
browser = webdriver.Chrome()

# 访问百度首页
browser.get('https://www.baidu.com')

# 查找搜索框元素
input_box = WebDriverWait(browser, 10).until(
    EC.presence_of_element_located((By.ID, 'kw'))
)

# 输入搜索内容
input_box.send_keys('Python')

# 查找搜索按钮元素
search_button = WebDriverWait(browser, 10).until(
    EC.presence_of_element_located((By.ID, 'su'))
)

# 点击搜索按钮
search_button.click()
关闭浏览器

使用 Selenium 关闭浏览器:

from selenium import webdriver

# 启动 Chrome 浏览器
browser = webdriver.Chrome()

# 访问百度首页
browser.get('https://www.baidu.com')

# 关闭浏览器
browser.quit()
总结

本文介绍了如何使用 Python 控制浏览器,包括如何使用 Selenium 启动浏览器、访问网页、查找元素、操作元素等。Selenium 是一个非常强大的工具,可以实现 Web 自动化测试、网站爬取等任务。