Selenium+Python系列(三) - 常见浏览器操作
写在前面
上篇文章为大家分享了自动化测试中,常见元素定位的操作。
今天再次读文章,居然忘记了大家特别喜欢的CSS和Xpath定位操作分享,这怎么能行呢?
马上安利,感兴趣的同学去参考下面链接:
浏览器常见操作
1、打开某个页面
driver.get("http//:www.baidu.com")
2、获取当前URL
currentUrl=driver.current_url
print('当前地址:{0}'.format(currentUrl))
3、获取页面源代码
pagesourse=driver.page_source
print('获取页面源代码:{0}'.format(pagesourse))
4、获取当前标题
title=driver.title
print('当前页面标题:{0}'.format(title))
5、前进/后退操作
driver.get("https://www.cnblogs.com/longronglang/p/16811786.html");
print('当前页面标题:{0}'.format(title))
6、前进
driver.forward()
7、后退
driver.back()
8、刷新浏览器
driver.refresh()
9、获取使用浏览器
print("当前使用浏览器:{0}".format(driver.name))
10、退出浏览器
- 关闭当前窗口,或最后打开的窗口:
driver.close() - 关闭全部关联窗口,而且安全关闭session:
driver.quit()
11、最大化浏览器窗口
driver.maximize_window()
12、设置浏览器窗口大小
driver.set_window_size(1980,1080)
13、获取当前窗口的长和宽
driver.get_window_size()
14、获取当前窗口坐标
driver.get_window_position()
关于driver的常用操作,笔者都已作出了演示,其他可参考源代码去学习,或者去通过输出driver属性,识别函数去学习即可。
15、如何输出driver属性
什么是属性?属性就是属于一个对象的数据或者函数的元素(内建函数dir可查看对象属性),能够经过属性据点标识符来访问。
示例代码如下:
# 输出driver属性
print('浏览器属性:')
print(dir(driver))
全部案例代码如下:
# -*- coding: utf-8 -*-
"""
@Time : 2022/10/21 8:31 PM
@Auth : 公众号:软件测试君
@File :brower.py
@IDE :PyCharm
@Motto:ABC(Always Be Coding)
"""
import time as time
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get("https://www.baidu.com/")
# 设置指定大小窗口
driver.set_window_size(1980, 1080)
# 最大化
driver.maximize_window()
# 获取当前URL
currentUrl = driver.current_url
print('当前地址:{0}'.format(currentUrl))
# 获取页面源代码
pagesourse = driver.page_source
print('获取页面源代码:{0}'.format(pagesourse))
# 获取当前标题
title = driver.title
print('当前页面标题:{0}'.format(title))
# 前进/后退操作
driver.get("https://www.cnblogs.com/longronglang/p/16811786.html");
print('当前页面标题:{0}'.format(title))
time.sleep(2)
# 前进
driver.forward()
time.sleep(2)
# 后退
driver.back()
# 刷新浏览器
driver.refresh()
# 获取使用浏览器
print("当前使用浏览器:{0}".format(driver.name))
# 输出driver属性
print('浏览器属性:')
print(dir(driver))
# 退出浏览器
# 关掉句柄
driver.close()
# 退出浏览器
driver.quit()
写在最后
这部分相对来说比较简单,感兴趣的同学可以自行去尝试!
我是六哥,如果觉得写的还不错,请继续关注我,我的公众号:软件测试君,并帮忙转发文章到朋友圈,你的每一次转发,我都当做了喜欢!
Selenium+Python系列(三) - 常见浏览器操作的更多相关文章
- Selenium3 + Python3自动化测试系列三——控制浏览器操作
控制浏览器操作 控制浏览器窗口大小 在测试过程中,我们在打开浏览器后,根据需求可自定义调整浏览器的尺寸大小.WebDriver提供了set_window_size()方法来设置浏览器的大小. 如果页面 ...
- Selenium+Python系列 - 开发环境搭建
一.写在前面 我从未想过自己会写python系列的自动化文章,有些同学会问,那你现在为什么又开始写了? 不止一个人找过我,问我可以写一些Python自动化的文章吗,答案是肯定的. 笔者Java党,整P ...
- No.1 selenium学习之路之浏览器操作
selenium基础,首先就是浏览器的相关操作 下面描述几种浏览器的常用操作 1.打开浏览器 webdriver后面添加想要打开的浏览器 Ie或者Chrome 2.打开指定页面(百度) 3.休眠时间 ...
- selenium(三)浏览器操作
from time import sleep from selenium import webdriver #定义浏览器是firefox driver=webdriver.Firefox() #页面打 ...
- selenium python (十)浏览器多窗口处理
#!/usr/bin/python# -*- coding: utf-8 -*-__author__ = 'zuoanvip'#在测试过程中有时候会遇到出现多个浏览器窗口的情况,这时候我们可以通过窗口 ...
- Python 第三天 文件操作(2)
文件操作 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开 文件句柄 = file('文件路径', '模式') 注:python中打开文件有两种方式,即:open(...) 和 fi ...
- Python(三)——文件操作
在我们用语言的过程中,比如要往文件内进行读写,那么势必要进行文件操作,那么咋操作呢?用眼睛直接看么?今天就定个小目标,把文件读写那些事扯一扯 文件操作 把大象放进冰箱分几步? 第一步:打开冰箱 第二步 ...
- 2 python第三章文件操作
1.三元运算 三元运算又称三目运算,是对简单的条件语句的简写,如: 简单条件语句: if 条件成立: val = 1 else: val = 2 改成三元运算: val = 1 if 条件成立 els ...
- python入门三:文件操作
一.文件操作 1.文件对象:和c一样,要想对一个文件进行操作,需要获取该文件的对象 f = open("xxx") # 打开文件并获取文件对象 f.xxx # 对文件进行某些操作 ...
随机推荐
- [算法1-排序](.NET源码学习)& LINQ & Lambda
[算法1-排序](.NET源码学习)& LINQ & Lambda 说起排序算法,在日常实际开发中我们基本不在意这些事情,有API不用不是没事找事嘛.但必要的基础还是需要了解掌握. 排 ...
- Luogu3267 [JLOI2016/SHOI2016]侦察守卫 (树形DP)
树形DP,一脸蒙蔽.看了题解才发现它转移状态与方程真不愧神题! \(f[x][y]\)表示\(x\)的\(y\)层以下的所有点都已经覆盖完,还需要覆盖上面的\(y\)层的最小代价. \(g[x][y] ...
- HDU3085 Nightmare Ⅱ (双向BFS)
联赛前该练什么?DP,树型,状压当然是爆搜啦 双向BFS就是两个普通BFS通过一拼接函数联系,多多判断啦 #include <iostream> #include <cstdio&g ...
- React报错之React Hook useEffect has a missing dependency
正文从这开始~ 总览 当useEffect钩子使用了一个我们没有包含在其依赖数组中的变量或函数时,会产生"React Hook useEffect has a missing depende ...
- Rust 从入门到精通06-语句和表达式
1.语句和表达式 语句和表达式是 Rust 语言实现逻辑控制的基本单元. 在 Rust 程序里面,语句(Statement)是执行一些操作但不返回的指令,表达式(Expressions)计算并产生一个 ...
- django_day02
django_day02 外键 表示一对多 多对一 class Book(models.Model): name = models.CharField(max_length=32) publisher ...
- 第四篇:理解vue代码
解释以下代码: 实现输入框中能够打字的功能 <el-input v-model="input" placeholder="在这打字"></el ...
- luogu P2882 [USACO07MAR]Face The Right Way G
题目描述 Farmer John has arranged his N (1 ≤ N ≤ 5,000) cows in a row and many of them are facing forwar ...
- 金九银十,收下这份 Java String 面试题
请点赞关注,你的支持对我意义重大. Hi,我是小彭.本文已收录到 GitHub · Android-NoteBook 中.这里有 Android 进阶成长知识体系,有志同道合的朋友,关注公众号 [彭旭 ...
- 面试突击83:什么情况会导致@Transactional事务失效?
一个程序中不可能没有事务,而 Spring 中,事务的实现方式分为两种:编程式事务和声明式事务,又因为编程式事务实现相对麻烦,而声明式事务实现极其简单,所以在日常项目中,我们都会使用声明式事务 @Tr ...