Selenium 控制浏览器窗口与导航的常用方法

Miles
Miles
发布时间:2026-10-11| 2人浏览过
原创

本文介绍使用 Selenium 控制浏览器的核心操作,包括自定义窗口尺寸、全屏显示、页面前进与后退以及刷新当前页。通过 Python 代码示例,展示如何调用 set_window_size、maximize_window、back、forward 和 refresh 等方法,帮助开发者实现浏览器自动化控制。

自定义浏览器窗口大小

在自动化测试或数据采集场景中,有时需要指定特定的浏览器窗口尺寸以模拟特定设备或布局。Selenium 提供了 set_window_size 方法来调整窗口大小,参数为像素值。

from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')

# 自定义窗口大小
driver.set_window_size(100, 200)#参数数字为像素点
print('现在是自定义大小展示')
time.sleep(5)#睡5秒 显示一下效果

#全屏展示
driver.maximize_window()
print('现在是全屏展示')
time.sleep(5) #睡5秒 显示一下效果

driver.quit()#关闭所有标签页

上述代码首先打开百度首页,随后将窗口大小设置为 100x200 像素,并暂停 5 秒以便观察效果。接着调用 maximize_window 将浏览器最大化,最后关闭所有标签页。

设置浏览器全屏显示

为了获得最大的可视区域,可以使用 maximize_window 方法将浏览器窗口最大化。这在需要查看完整页面内容或进行全屏截图时非常有用。

from selenium import webdriver
import time
driver = webdriver.Chrome()

driver.get('https://www.baidu.com/')

#访问百度首页
first_url= 'https://www.baidu.com/'
print("现在位置:百度首页")
driver.get(first_url)
time.sleep(3)

#访问新闻页面
second_url='http://news.baidu.com'
print('现在位置:新闻页')
driver.get(second_url)
time.sleep(3)

#返回(后退)到百度首页
print("后退,现在位置:百度首页")
driver.back()
time.sleep(3)

#前进到新闻页
print("前进,现在位置:新闻页")
driver.forward()
time.sleep(3)

driver.quit()#关闭所有标签页

该示例展示了完整的导航流程:从百度首页跳转到新闻页,然后后退回首页,最后前进到新闻页。通过 time.sleep 模拟操作间隔,便于观察页面变化。

控制浏览器后退操作

back 方法用于模拟浏览器的“后退”按钮,返回到之前访问过的页面。需要注意的是,后退操作仅适用于在原有标签页中打开的新页面,如果通过新标签页打开链接,则无法使用此方法后退。

from selenium import webdriver
import time

driver = webdriver.Chrome()

driver.get('https://www.baidu.com/')

#访问百度首页
first_url= 'https://www.baidu.com/'
print("现在位置:百度首页")
driver.get(first_url)
time.sleep(3)

#访问新闻页面
second_url='http://news.baidu.com'
print('现在位置:新闻页')
driver.get(second_url)
time.sleep(3)

#返回(后退)到百度首页
print("后退,现在位置:百度首页")
driver.back()
time.sleep(3)

#前进到新闻页
print("前进,现在位置:新闻页")
driver.forward()
time.sleep(3)

driver.quit()#关闭所有标签页

控制浏览器前进操作

与后退相对应,forward 方法用于模拟“前进”按钮,返回到后退之前访问过的页面。这允许用户在浏览历史中自由穿梭。

from selenium import webdriver
import time

driver = webdriver.Chrome()

driver.get('https://www.baidu.com/')

#访问百度首页
first_url= 'https://www.baidu.com/'
print("现在位置:百度首页")
driver.get(first_url)
time.sleep(3)

#访问新闻页面
second_url='http://news.baidu.com'
print('现在位置:新闻页')
driver.get(second_url)
time.sleep(3)

#返回(后退)到百度首页
print("后退,现在位置:百度首页")
driver.back()
time.sleep(3)

#前进到新闻页
print("前进,现在位置:新闻页")
driver.forward()
time.sleep(3)

driver.quit()#关闭所有标签页

刷新浏览器

当需要重新加载当前页面以获取最新数据时,可以使用 refresh 方法。该方法模拟浏览器的刷新按钮,重新发送当前页面的请求。

from selenium import webdriver
import time

driver = webdriver.Chrome()

driver.get('https://www.baidu.com/')

time.sleep(3)
driver.refresh() # 刷新当前页面
time.sleep(3)

driver.quit() # 关闭所有标签页

以上代码展示了如何打开百度首页,等待 3 秒后刷新页面,再等待 3 秒后关闭浏览器。在实际应用中,可根据需要调整等待时间。

总结

通过本文的介绍,我们了解了如何使用 Selenium 控制浏览器窗口大小、全屏显示、前进后退以及刷新页面。这些方法是浏览器自动化的基础,掌握它们有助于更高效地完成自动化测试和数据采集任务。

以上就是Selenium 控制浏览器窗口与导航的常用方法的详细内容,更多关于Selenium浏览器控制、窗口大小、前进后退、页面刷新的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。