Python+selenium实现浏览器基本操作详解

目录
  • 关闭 driver 启动的浏览器
  • 浏览器最大化与设置浏览器窗口大小
    • 浏览器最大化
    • 设置浏览器窗口大小
  • 浏览器的前进、后退与刷新页面

关闭 driver 启动的浏览器

上一章节文末,我们介绍了关于两种关闭浏览器的方式,这里不做过多的复述。(实在是这一章节的内容太少了)

在 selenium 中,提供了两种关闭 driver 启动的浏览器的方式:

  • close() 方法:该方法可以关闭浏览器,但是它关闭的只是浏览器的窗口,由 driver 启动的浏览器的进程依然还在,会占用一定的资源。
  • quit() 方法:该方法同样可以关闭浏览器,但是它在关闭浏览器的窗口的同时,也会 kill 掉 driver 启动的浏览器的进程。

ps:以上两种方法,close() 方法适合在我们启动浏览器结束了一个用例的场景之后,仍需执行其他的自动化测试用例的时候使用;而 quit() 方法则适合在已经执行完所有用例之后使用。

代码示例如下:

# coding:utf-8

import time
from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"
# driver = webdriver.Chrome(executable_path=chrome_driver)
driver = webdriver.Chrome()
driver.get("https://blog.csdn.net/")
time.sleep(1)
driver.quit()

运行结果如下:

浏览器最大化与设置浏览器窗口大小

在我们的测试过程中,使用一些基于图像或者坐标辅助工具的时候,就会需要浏览器在每次测试的时候都保持着最大化,以便于能够在同一个分辨率下进行图像的比对、使用做点进行的点选等等。所以接下来就看看如何将浏览器最大化与设置特定的分辨率大小。

浏览器最大化

使用 maximize_window() 方法将浏览器最大化,代码示例如下:

# coding:utf-8

import time
from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"
# driver = webdriver.Chrome(executable_path=chrome_driver)
driver = webdriver.Chrome()
time.sleep(1)
driver.maximize_window()
driver.get("https://blog.csdn.net/")
time.sleep(1)
driver.quit()

运行结果如下:

这就是一个最大化的操作功能。

设置浏览器窗口大小

都是最大化的场景可能会出现图像、坐标定位不精确的情况,所以当我们希望能够在同一浏览器大小的情况下去运行用例,这样就会比较容易进行图像比对的结合,从而提升灵活性;或者也想测试一下能够在不同的浏览器大小场景下,访问我们的测试站点。对测试页面进行截个图、兼容性是否正常等等等等…

使用 "set_window_size()" 方法来设置窗口的大小。 代码示例如下:

# coding:utf-8

import time
from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"
# driver = webdriver.Chrome(executable_path=chrome_driver)
driver = webdriver.Chrome()
time.sleep(1)
driver.set_window_size(360, 480)
time.sleep(1)
driver.maximize_window()
driver.get("https://blog.csdn.net/")
time.sleep(1)
driver.quit()

运行结果如下:

浏览器的前进、后退与刷新页面

PS:前进和后退使用的是非常少的。

  • 使用 back() 方法进行浏览器页面的后退。
  • 使用 forword() 方法进行浏览器页面的前进。
  • 使用 refresh() 方法进行浏览器页面的刷新。

代码示例如下:

# coding:utf-8

import time
from selenium import webdriver

# chrome_driver = "/Users/workspace/driver/chromedriver"
# driver = webdriver.Chrome(executable_path=chrome_driver)
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://blog.csdn.net/weixin_42250835?type=blog")
time.sleep(2)
driver.get("https://blog.csdn.net/")
time.sleep(2)
driver.back()
time.sleep(1)
driver.forward()
time.sleep(1)
driver.refresh()
time.sleep(1)
driver.quit()

运行结果如下:

到此这篇关于Python+selenium实现浏览器基本操作详解的文章就介绍到这了,更多相关Python selenium操作浏览器内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python用selenium打开chrome浏览器保持登录方式

    目录 导读 selenium操作浏览器 打开chrome浏览器 使用selenium打开网站 总结 导读 我们在使用selenium打开google浏览器的时候,默认打开的是一个新的浏览器窗口,而且里面不带有任何的浏览器缓存信息.当我们想要爬取某个网站信息或者做某些操作的时候就需要自己再去模拟登陆 selenium操作浏览器 这里我们就以CSDN为例,来展示如何让selenium在打开chrome浏览器的时候带上用户的登录信息 打开chrome浏览器 from selenium import w

  • Python之Selenium自动化浏览器测试详解

    目录 Python之Selenium(自动化浏览器测试) 1.安装selenium 2.下载对应版本的浏览器驱动 3.测试code,打开一个网页,并获取网页的标题 4.一个小样例 总结 Python之Selenium(自动化浏览器测试) 1.安装selenium pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple 2.下载对应版本的浏览器驱动 http://npm.taobao.org/mirrors/chromedr

  • Python使用Selenium模拟浏览器自动操作功能

    概述 在进行网站爬取数据的时候,会发现很多网站都进行了反爬虫的处理,如JS加密,Ajax加密,反Debug等方法,通过请求获取数据和页面展示的内容完全不同,这时候就用到Selenium技术,来模拟浏览器的操作,然后获取数据.本文以一个简单的小例子,简述Python搭配Tkinter和Selenium进行浏览器的模拟操作,仅供学习分享使用,如有不足之处,还请指正. 什么是Selenium? Selenium是一个用于Web应用程序测试的工具,Selenium测试直接运行在浏览器中,就像真正的用户在

  • Python爬虫之Selenium实现关闭浏览器

    前言:WebDriver提供了两个关闭浏览器的方法,一个是前边使用quit()方法,另一个是close()方法 close():关闭当前窗口 quit():关闭所有窗口 quit()是关闭所有窗口,就不过多说了,测试一下close() from selenium import webdriver from selenium.webdriver.common.keys import Keys import time driver = webdriver.Chrome() driver.get("h

  • Python+selenium实现浏览器基本操作详解

    目录 关闭 driver 启动的浏览器 浏览器最大化与设置浏览器窗口大小 浏览器最大化 设置浏览器窗口大小 浏览器的前进.后退与刷新页面 关闭 driver 启动的浏览器 上一章节文末,我们介绍了关于两种关闭浏览器的方式,这里不做过多的复述.(实在是这一章节的内容太少了) 在 selenium 中,提供了两种关闭 driver 启动的浏览器的方式: close() 方法:该方法可以关闭浏览器,但是它关闭的只是浏览器的窗口,由 driver 启动的浏览器的进程依然还在,会占用一定的资源. quit

  • Python中Selenium库使用教程详解

    selenium介绍 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转.输入.点击.下拉等,来拿到网页渲染之后的结果,可支持多种浏览器 中文参考文档 官网 环境安装 下载安装selenium pip install selenium -i https://mirrors.aliyun.com/pypi/simple/ 谷歌浏览器驱动程序下载地址:

  • Python中Selenium模块的使用详解

    Selenium的介绍.配置和调用 Selenium(浏览器自动化测试框架) 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11),Firefox,Safari,Google Chrome,Opera等.这个工具的主要功能包括:测试浏览器的兼容性--测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上.测试系统功能--创建回归测试检验软件功能和用户需求.支持自动录制动作和自动生成 .

  • Python速成篇之像selenium一样操作电脑详解

    目录 常用用法一 常用用法二 常用用法三 常用用法四 常用用法五 常用用法六 末段小结 为了照顾新手我会写的很详细,若是只是来寻找函数用法的小伙伴可以直接滑到末段小结哦 首先我们需要使用到的第三方库是 pyautogui 可以用快捷键win+R输入cmd在调出的命令行中输入如下指令 pip install pyautogui 等待一小会下载安装完成后即可直接调用啦 调用方式为: import pyautogui 常用用法一 模拟鼠标点击 pyautogui.click() 但是电脑它并不知道我们

  • Python NumPy教程之数组的基本操作详解

    目录 Numpy中的N维数组(ndarray) 数组创建 数组索引 基本操作 数据类型 Numpy中的N维数组(ndarray) Numpy 中的数组是一个元素表(通常是数字),所有元素类型相同,由正整数元组索引.在 Numpy 中,数组的维数称为数组的秩.给出数组沿每个维的大小的整数元组称为数组的形状.Numpy 中的数组类称为ndarray.Numpy 数组中的元素可以使用方括号访问,并且可以使用嵌套的 Python 列表进行初始化. 例子 : [[ 1, 2, 3], [ 4, 2, 5]

  • Python实现滑块拼图验证码详解

    目录 初级版滑块拼图验证码 补充知识点 高级版滑动拼图验证码 滑动拼图验证码可以算是滑块验证码的进阶版本,其验证机制相对复杂.本节将介绍两种滑动拼图验证码:初级版和高级版本. 初级版滑块拼图验证码 初级版滑动拼图验证码是在普通滑块验证码的基础上增加了随机的滑动距离,用户需要根据拼图的缺口位置来决定滑块的滑动位置. 如下左图所示为一个滑块拼图验证码的起始状态,注意此时还没有显示拼图和缺口.单击滑块后就会出现拼图和缺口,如下右图所示.之后会利用这一特性来找到拼图和缺口的位置. 下面开始编写代码.首先

  • python爬虫使用cookie登录详解

    前言: 什么是cookie? Cookie,指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密). 比如说有些网站需要登录后才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的.那么我们可以利用Urllib库保存我们登录的Cookie,然后再抓取其他页面,这样就达到了我们的目的. 一.Urllib库简介 Urllib是python内置的HTTP请求库,官方地址:https://docs.python.org/3/library/urllib.ht

  • python flask安装和命令详解

    Flask Web开发实战学习笔记 Flask简介 Flask是使用Python编写的Web微框架.Web框架可以让我们不用关 心底层的请求响应处理,更方便高效地编写Web程序.因为Flask核心简 单且易于扩展,所以被称作微框架(micro framework).Flask有两个主 要依赖,一个是WSGI(Web Server Gateway Interface,Web服务器网关 接口)工具集--Werkzeug(http://werkzeug.pocoo.org/),另一个是 Jinja2模

  • 关于python 跨域处理方式详解

    因为浏览器的同源策略限制,不是同源的脚本不能操作其他源下面的资源,想操作另一个源下面的资源就属于跨域了,这里说的跨域是广义跨域,我们常说的代码中请求跨域,是狭义的跨域,即在脚本代码中向非同源域发送http请求 浏览器的同源策略(SOP/same origin policy)是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS(跨站脚本攻击 cross site scripting)和CSRF(跨站请求伪造cross-site request forgery)等攻击. (同

随机推荐