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

### Selenium 基本使用教程 #### 安装与初始化 Selenium种用于自动化测试的工具,支持多种编程语言和浏览器。以下是 Python 中安装并初始化 Selenium基本流程。 要安装 Selenium 库,可以运行以下命令: ```bash pip install selenium ``` 接着需要下载对应浏览器的 WebDriver 并指定其路径。例如 Chrome 浏览器需要 `chromedriver` 工具[^3]: ```python from selenium import webdriver # 初始化Chrome WebDriver实例 driver = webdriver.Chrome(executable_path='/path/to/chromedriver') ``` #### 访问页面 通过调用 `get()` 方法访问目标 URL 页面。 ```python # 打开指定URL driver.get("https://www.example.com/") ``` #### 查找元素 Selenium 提供了丰富的查找元素的方法,常见的有基于 ID、名称、CSS 选择器以及 XPath 等方式来定位 HTML 元素[^2]。 ##### 使用ID定位 如果知道某个HTML标签具有唯的id属性,则可以直接利用find_element_by_id方法找到该对象。 ```python element = driver.find_element_by_id('uniqueId') ``` ##### 利用XPath表达式寻找节点 当无法简单依靠单特性(比如 id 或 name)唯确定某项时,可采用更灵活强大的XPath技术。 ```python element = driver.find_element_by_xpath("//div[@class='example']") ``` #### 操作元素 旦找到了特定的目标控件之后就可以对其进行各种交互动作,像点击按钮、填写表单字段等都属于此类范畴。 ##### 输入文本到输入框 假设有个登录界面包含用户名输入区域,可以通过send_keys函数实现自动填充功能。 ```python username_field = driver.find_element_by_name('username') username_field.send_keys('testUser') ``` ##### 单击链接或按钮 对于超链接或者其他触发事件类型的组件来说,“click”是最常用的操作之。 ```python login_button = driver.find_element_by_css_selector('.btn-login') login_button.click() ``` #### 截图保存 有时候为了验证某些视觉上的变化或者错误情况下的证据留存,截图会非常有用。 ```python driver.save_screenshot('screen_capture.png') ``` #### 关闭浏览器 完成所有的任务以后记得关闭打开过的窗口以释放资源。 ```python driver.quit() ``` 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值