[selenium]浏览器基本操作
前言
- 版本:
- python:3.9
- selenium:4.1.5
- 浏览器:firefox
创建浏览器对象
from selenium import webdriver
driver = webdriver.Firefox(executable_path=r"C:\software\selenium\geckodriver.exe")
打开网页
# 打开在线网页
driver.get("https://www.baidu.com")
# 打开离线网页
driver.get('file:///C:/File/index.html')
退出浏览器
# 关闭当前由selenium打开的浏览器窗口
driver.close()
# 关闭所有由selenium打开的浏览器窗口
driver.quit()
设置窗口大小
# 窗口最大化
driver.maximize_window()
# 网页全屏
driver.fullscreen_window()
# 指定大小
driver.set_window_size(500,400)
设置窗口位置
# 指定横纵坐标
driver.set_window_position(x=500,y=400)
# 同时指定坐标和大小
driver.set_window_rect(x=30,y=30,width=450,height=450)
获取窗口位置和大小
# 获取窗口位置
window_pos = driver.get_window_position()
# 获取窗口大小
window_size = driver.get_window_size()
浏览器导航
- 返回到前一个页面
driver.back()
- 前进到下一个页面(如果没有返回,就没有前进)
driver.forward()
- 刷新
driver.refresh()
鼠标操作
- 假设惯用手是右手,单击指左键单击
# 左键单击
elem = driver.find_element(...).click()
# 左键单击并按住
button = driver.find_element(...)
webdriver.ActionChains(driver).click_and_hold(button).perform()
# 右键单击
webdriver.ActionChains(driver).context_click(button).perform()
# 左键双击
webdriver.ActionChains(driver).double_click(on_element=button).perform()
# 移动光标但不点击
from selenium.webdriver.common.action_chains import ActionChains
ActionChains(driver).move_to_element(button).perform()
# 拖拽
src_elem = find_element(...)
des_elem = find_element(...)
ActionChains(driver).drag_and_drop(src_elem,des_elem).perform()
# 松开点击。点按 -> 拖拽 -> 松开
ActionChains(driver)\
.click_and_hold(src_elem)\
.move_to_element(des_elem)\
.perform()\
.release()\
.perform()
键盘操作
# 上、下、输入
from selenium.webdriver.common.keys import Keys
ActionChains(driver)\
.key_down(Keys.CONTROL)\
.send_keys("qwer")\
.key_up(Keys.CONTROL)\
.key_down(Keys.CONTROL)\
.send_keys("asdf")\
.key_up(Keys.CONTROL)\
.perform()
[selenium]浏览器基本操作的更多相关文章
- Selenium浏览器自动化测试工具
目录 Selenium浏览器自动化测试工具 Selenium模块在爬虫中的使用 Python简单使用Selenium Selenium的基本操作 Selenium爬取动态加载的数据 Selenium动 ...
- 跟浩哥学自动化测试Selenium -- 浏览器的基本操作与元素定位(3)
浏览器的基本操作与元素定位 通过上一章学习,我们已经学会了如何设置驱动路径,如何创建浏览器对象,如何打开一个网站,接下来我们要进行一些复杂的操作比如先打开百度首页,在打开博客园,网页后退,前进等等,甚 ...
- selenium自动化测试-浏览器基本操作
webdriver 通过协议和接口发现DOM中的元素,并实现控制浏览器的行为,例如打开浏览器.控制浏览器大小. 浏览器刷新及浏览器前进.后退等,接下来介绍浏览器的一些基本操作. 1.启动浏览器 dri ...
- selenium浏览器自动化测试框架文档(修正版)
写在最前面:目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出不穷,但是,能够在项目中持之以恒的实践自动化测试的团队,却依旧不是非常多.有的团队知道怎么做,做的还不够好:有的团队还 ...
- python+selenium浏览器调用(chrome、ie、firefox)
代码: #coding=utf-8 from selenium import webdriver driver=webdriver.Chrome() #调用chrome浏览器 driver.get(' ...
- 自动化测试基础篇--Selenium浏览器操作
摘自https://www.cnblogs.com/sanzangTst/p/7462056.html 学习 Selenium 主要提供的是操作页面上各种元素的方法,但它也提供了操作浏览器本身的方法 ...
- 手写一个selenium浏览器池
维护一组浏览器,实现每分钟1000次查询.DriverPool使用变幻版只初始化一次的单例模式.维护每个浏览器的当前是否使用的状态. 不需要等待请求来了,临时开浏览器,开一个浏览器会耽误6秒钟. 可以 ...
- Java Selenium - 浏览器操作
浏览器主要操作方法来自接口 org.openqa.selenium.WebDriver , 实现于org.openqa.selenium.remote.RemoteWebDriver这个类,然后不同浏 ...
- selenium 浏览器常用设置和部署
一,chrome浏览器设置 from selenium import webdriver # 浏览器选项 chrome_options = webdriver.ChromeOptions() # 使用 ...
- selenium浏览器驱动下载地址整理
今天把手头有的一些关于selenium测试的资源整理了一下,分享出来. 1. 所有版本chrome下载 是不是很难找到老版本的chrome?博主收集了几个下载chrome老版本的网站,其中哪个下载的是 ...
随机推荐
- React项目build
1.项目根目录下新建app.js文件 // 使用 express 搭建一个服务器 const express = require("express"); const { creat ...
- vue全家桶进阶之路5:DOM文档对象模型
一.DOM对象 DOM,全称"DocumentObjectModel(文档对象模型)",它是由W3C组织定义的一个标准. 在前端开发时,我们往往需要在页面某个地方添加一个元素或者删 ...
- HCIP- ICT实战进阶ex1-MPLS
HCIP- ICT实战进阶ex1-MPLS 0 前言 由于BGP设备之间是通过TCP协议实现的跨设备互联, 所以在两台BGP设备之间的其他设备是没有配置BGP协议的, 因此中间的其他设备很可能无法学习 ...
- 代码随想录算法训练营Day20 二叉树| 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点
代码随想录算法训练营 235. 二叉搜索树的最近公共祖先 题目链接:235. 二叉搜索树的最近公共祖先 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:& ...
- odoo开发教程十一:视图综述
一:视图标签等公共结构 name (必选) 用于通过名字查找标签 model: 与view相关联的model priority 当搜索查找view时,优先级最低的view会被返回 arch 视图lay ...
- CodeQl lab learn
step-3 query a function named strlen import cpp from Function f where f.getName() = "strlen&quo ...
- 【python基础】if语句-条件测试
1.初识if语句 编程时经常需要检查一系列条件,并据此决定采取什么措施.在Python中,使用if语句能够检查程序的当前状态,并据此采取相应措施. 其语法格式之一: 假设有一个学员名单的列表,想将其中 ...
- 如何卸载 python setup.py install 安装的包?
当我们半自动安装某些 python 包时,总是存在很多依赖关系的问题,而这些问题还是很难避免的,所以,当我们安装一个不确定的包的时候,最好提前收集一些相关资料,或者请教他人,同时最好把安装过程都记录下 ...
- R 语言常用操作与函数汇总
总结了一下 R 语言中常用的一些操作与函数使用,抛砖引玉,分享一下给大家,如有错误的地方欢迎留言指正. 怎样显示 R 软件中某个包中包含的全部数据集? > library(MASS)> d ...
- ChatGPT玩法(二):AI玩转Excel表格处理
前言 在线免费体验ChatGpt:https://www.topgpt.one 你是否还在为记不住Excel的繁琐函数和公式而苦恼?如果是这样,那么不妨试试ChatExcel.即使你对函数一窍不通,也 ...