Python+Selenium学习笔记9 - 警告框处理

如下图所示,这种窗口是不能通过前端工具对其进行定位的,这里可以通过switch_to_alert()方法去接受这个弹窗

 1 # coding = utf-8
 2
 3 from selenium import webdriver
 4 from selenium.webdriver.common.action_chains import ActionChains
 5 import time
 6
 7 dr = webdriver.Firefox()
 8 dr.get("http://www.baidu.com")
 9
10 # 鼠标悬停至“设置”链接
11 # link = dr.find_element_by_link_text("设置")  #这方法定位不了,又只能靠xpath
12 link = dr.find_element_by_xpath("/html/body/div[1]/div[1]/div/div[3]/a[8]")
13 ActionChains(dr).move_to_element(link).perform()
14 time.sleep(5)
15
16 # 打开搜索设置
17 dr.find_element_by_link_text("搜索设置").click()
18 time.sleep(5)
19
20 # 保存设置
21 dr.find_element_by_class_name("prefpanelgo").click()  # 这是保存按钮的class
22 time.sleep(5)
23
24 # 接受警告框
25 dr.switch_to_alert().accept()
26
27 dr.quit()
switch_to_alert().accept()  接受窗现有警告框switch_to_alert().text()   返回窗口的文字信息switch_to_alert().dissmiss()  解散现有警告框switch_to_alert().send_keys(keysToSend)     发送文本至警告框。keysToSend:将文本发送至警告框  # 没明白keysToSend是什么

原文地址:https://www.cnblogs.com/sue2015/p/9053971.html

时间: 2024-10-11 20:10:55

Python+Selenium学习笔记9 - 警告框处理的相关文章

Python+Selenium学习笔记4

1.submit() submit()方法用于提交表单.如在搜索框输入关键字后按回车键进行查询操作,就可用submit()方法模拟.若不能按回车键进入下一步,则不能用submit()举例,百度的查询提交. 1 from selenium import webdriver 2 3 dr = webdriver.Firefox() 4 dr.get("http://www.baidu.com") 5 6 dr.find_element_by_id("kw").send_

Python+Selenium学习笔记5

这篇笔记主要是从Python官网的Tutorial上截取下来,再加上个人理解 1. 在交互模式下,下划线'_'还可以表示上一步的计算结果 2.引号转义问题. 从下图总结的规律是,字符串里的引号如果和引住字符串的引号是相同的,字符串里的引号需要转义.不同则不需要. 最后一个例子看似没变化,加上print()就不同了 加print()和不加print()的区别: Print() function produces a more readable output, by omitting the enc

Python+Selenium学习笔记8 - 多表单&多窗口切换

1.多表单切换 下图为待测页面:内嵌百度首页 切换到百度首页进行操作 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os 5 import time 6 7 dr = webdriver.Firefox() 8 file_path = 'file:///' + os.path.abspath('frame.html') 9 dr.get(file_path) 10 11 # 切换到iframe(id="if"

Python+Selenium学习笔记10 - send_keys上传文件

在火狐浏览器上传文件 上传前,同一个HTML文件在火狐和Edge浏览器显示有些不同 这是Firefox浏览器的显示 这是Edge浏览器 上传后 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os 5 import time 6 7 dr = webdriver.Firefox() 8 file_path = "file:///" + os.path.abspath('upfile.html') 9 dr.g

Python+Selenium学习笔记6 - os模块

os模块是关于文件/目录方面的 导入语法 import os 相关方法 path.abspath()   用来获取当前路径下的文件 os.path.abspath('checkbox.html')  这句获得的结果是E:/Python-Project/threeCases/checkbox.html,但是不能用浏览器打开. 可以在前面加上file:/// 如下 file_path = 'file:///' + os.path.abspath('checkbox.html')  这句获得的结果是f

Python+Selenium学习笔记6 - 定位

1.8种针对单个元素的定位方法 find_element_by_id() find_element_by_name() find_element_by_class_name() find_element_by_tag_name() find_element_by_link_text() find_element_by_partial_link_text() find_element_by_xpath() find_element_by_css_selector() 2..8种针对多个元素的定位方

【selenium学习笔记】webdriver进行页面元素定位

[selenium学习笔记]webdriver进行页面元素定位 进行Web页面自动化测试,对页面上的元素进行定位和操作是核心.而操作又是以定位为前提的,因此,对页面元素的定位是进行自动化测试的基础. 页面上的元素就像人一样,有各种属性,比如元素名字,元素id,元素属性(class属性,name属性)等等.webdriver就是利用元素的这些属性来进行定位的. 可以用于定位的常用的元素属性: id name class name tag name link text partial link te

2. 蛤蟆Python脚本学习笔记二基本命令畅玩

2. 蛤蟆Python脚本学习笔记二基本命令畅玩 本篇名言:"成功源于发现细节,没有细节就没有机遇,留心细节意味着创造机遇.一件司空见惯的小事或许就可能是打开机遇宝库的钥匙!" 下班回家,咱先来看下一些常用的基本命令. 欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/48092873 1.  数字和表达式 看下图1一就能说明很多问题: 加法,整除,浮点除,取模,幂乘方等.是不是很直接也很粗暴. 关于上限,蛤蟆不太清楚

Python Click 学习笔记(转)

原文链接:Python Click 学习笔记 Click 是 Flask 的团队 pallets 开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现.恰好我最近在开发的一个小工具需要在命令行环境下操作,就写个学习笔记. 国际惯例,先来一段 "Hello World" 程序(假定已经安装了 Click 包). # hello.py import click @click.command() @click.option('--count', default