selenium基本使用(一)

selenium基本使用

from selenium import webdriver #导入一个selenium 库中导入webdriver模块

在Python中做UI自动化:selenium'''

创建一个drvier对象用来调用打开浏览器,对浏览器实现操作

driver =webdriver.Chrome() #主讲谷歌浏览器

driver =webdriver.Ie()

driver =webdriver.firefox()

通过调用webdrvier.来引用对应的浏览器,生成一个浏览器对象

注意事项:webdrvier. 点后面的浏览器名称不要自己输入用联想

还有自己添加一个英文的小括号() 小括号的作用是:把它声明成为一个匿名对象 那么当前的drvier就是一个浏览器驱动对象,可以用它来

对对应的浏览器实现操作的动作

UI自动化所有的调用都必须在最前面加上一个drvier对象

通过对象来打开谷歌浏览器且输入网址

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

通过对象调用get方法来打开一个网站URL

一.打开窗口

(1)dx,.get 打开网站

from selenium import webdriver #导入selenium模块中的webdriver

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

(2)重开窗口打开页面

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(2)

w="window.open('https://www.baidu.com')"

dx.execute_script(w)

(3).时间等待

a.强制等待 sleep(xx) 必须等待n秒,n秒结束后必须执行下一步

b.隐性等待 implicitly_wait(xx) 最长等待时间,在n秒内运行结束后,可以在等待时间未结束前执行下一步,只要完成这一步就可以执行下一步

c.显性等待 WebDriverWait 程序每隔xx秒看一眼,如果条件成立了,则执行下一步,否则继续等待,直到超过设置的最长时间,然后抛出TimeoutException

案例:

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(5) #强制等待

dx.implicitly_wait(10) #隐式等待

WebDriverWait#显示等待

w="window.open('https://www.baidu.com')"

dx.execute_script(w)

三.页面刷新

dx.refresh() #刷新

代码:

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(2)

dx.refresh() #刷新

四.返回上一页,切换到下一页

dx.back() 返回上一也

dx.forward() #切换到下一页

图片

代码:

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(2)

dx.get("https://www.baidu.com")

time.sleep(2)

dx.back() #切换到上一页

time.sleep(2)

dx.forward() #切换到下一页

五.设置窗口

(1)窗口最大化

语句:dx.maximize_window()

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(2)

dx.maximize_window()

(2)设置窗口大小

dx.set_window_size(500,500)

代码:

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(2)

dx.maximize_window()

time.sleep(2)

dx.set_window_size(500,500)

六.截图

dx.get_screenshot_as_file(r"保存路径\截图名.png")

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

dx.get_screenshot_as_file(r"E:\az\f\aa.png")

七.quit 退出所有窗口 ,close关闭当前窗口

(1)quit

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(2)

w="window.open('https://www.baidu.com')"

dx.execute_script(w)

dx.quit()

(2)close 关闭当前拆窗口

from selenium import webdriver #导入selenium模块中的webdriver

import time

dx=webdriver.Chrome() #创建一个驱动谷歌浏览器的对象

dx.get("过期更新") #通过get打开页面

time.sleep(2)

w="window.open('https://www.baidu.com')"

dx.execute_script(w)

time.sleep(2)

dx.quit()

dx.close()

相关推荐
测试员周周14 小时前
【jev应用到测试】94 条 UI 报错交给 Jev,三档判对 85.1%,开单闸门定在 0.6
人工智能·python·测试工具·单元测试·测试用例
xfilm埃利测量16 小时前
从方阻到电阻率:四探针法如何把薄膜“测明白“
功能测试·测试工具·四探针·薄膜电阻测量
禹凕1 天前
机器学习之Selenium(Machina Learning about Selenium)
爬虫·python·selenium·测试工具·机器学习
水水不水啊3 天前
告别杂乱的调试窗口:我用 Python + WebView 写了一个现代化串口助手
python·测试工具·嵌入式·嵌入式开发·串口调试·串口助手
把头塞进显示器10 天前
电商平台-测试报告
python·selenium·pytest
霍格沃兹测试学院-小舟畅学10 天前
UI 测试的语义断言:Midscene aiAssert 比像素比对稳在哪、又会骗在哪
人工智能·测试工具
zuozewei10 天前
附录 A:主流工具对比选型表
人工智能·测试工具
我的xiaodoujiao10 天前
Django 基础知识详细图文教程 10-Django 模板引擎 3
后端·python·测试工具·django
霍格沃兹测试学院-小舟畅学11 天前
Google 开源 ARTEMIS:AI Agent 如何接管 Android 真机测试?
人工智能·测试工具
Liaiyang6611 天前
# 自研 AST 容错初筛工具:横向评测 Django、PyTorch、TensorFlow 三大开源 Python 框架异常收容风险
python·测试工具·自动化·开源软件·代码规范·devops·代码复审