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()

相关推荐
一个幽默的程序员2 小时前
Postman 如何发送 XML 格式的 API 请求?
xml·测试工具·postman
eqwaak06 小时前
京东商品爬虫技术解析:基于Selenium的自动化数据采集实战
开发语言·人工智能·爬虫·python·selenium·自动化
莓事哒7 小时前
使用Selenium和lxml库搜房网爬取某地区房屋信息(python、pycharm爬虫)
爬虫·python·selenium·pycharm·lxml
【非典型Coder】7 小时前
Postman 发送批量请求
测试工具·postman
小鑫仔_x7 小时前
selenium之element常见属性、方法
selenium·测试工具
程序员杰哥10 小时前
软件测试常用设计模式
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
星星点灯50810 小时前
盛铂国产SCP4000 射频微波功率计与 SPP5000脉冲峰值功率计:高性价比,探头式功率计功率测量
测试工具·量子计算·模块测试·射频工程
互联网杂货铺10 小时前
功能测试、性能测试、安全性测试详解
自动化测试·软件测试·功能测试·测试工具·职场和发展·性能测试·安全性测试
qq_3325394510 小时前
自动化测试与 CAPTCHA 识别指南
javascript·爬虫·python·selenium·算法
一禅(OneZen)12 小时前
【L2.第二章】Appium 元素定位工具
python·selenium·appium·自动化·web