与switch_to.window 和 switch_to.frame 相比,switch_to.alert的alert方法使用了@property 装饰器,所以在使用时alert被当成属性调用. 演示如下 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.get("https://www.baidu.com") # 模拟一个弹窗 js = "a…
  三种弹出框alert(一个按钮),confirm(两个确认,取消),prompt(两个按钮+输入框). 切换到弹框: switch_to_alert()  新版的selenium用:  browser.switch_to.alert.accept() browser.switch_to.alert.send_keys('abc') browser.switch_to.alert.dismiss() 弹框的方法: 1 text获取弹框文本 2 accept()确认 3 dimiss()取消 4…
弹窗一般分为三种类型: 1.警告消息框(alert) 警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作. 2.确认消息框(confirm) 确认消息框向用户提示一个"是与否"问题,用户可以根据选择"确定"按钮和"取消"按钮. 3.提示消息对话(prompt) 提示消息框提供了一个文本字段,用户可以在此字段输入一个答案来响应您的提示.该消息框有一个&…
与在新窗口打开一个网页后需要切换窗口才能定位元素一样,在iframe标签中的元素也不能直接定位,需要切换到对应的iframe框架中才能进行元素定位. 完成网页框架切换操作需要用selenium中的两个方法 driver.switch_to.frame(frame_reference):切换到网页框架内,frame_reference为框架元素 driver.switch_to.default_content():退出网页框架 下面以网易邮箱(https://www.126.com/)演示网页的框…
想一下这样的场景,打开页面A点击一个链接,在一个新的窗口打开页面B,由于之前的driver实例对象在页面A,但是你接下来操作的元素在页面B中,此时脚本就会报错找不到元素.该场景需要使用到selenium的switch_to.window()方法进行窗口切换. 演示场景:打开百度首页(页面A),点击新闻链接(在一个新窗口打开页面B),点击新闻界面的互联网专题. 代码实现如下: from selenium import webdriver import time # 创建Chrome实例对象 dri…
前言: 最近在搞appium自动化,iOS的系统弹窗是大家都会遇到的,本文来总结处理这种弹窗的用法. 环境: MacOS:10.13.4 Appium-desktop:1.6.1 Xcode:9.3.1 ---- 一.使用switch_to.alert处理弹窗 #所有弹窗默认允许 self.driver.switch_to.alert.accept() 首先推荐这种方式,几乎不会失败.解决这个问题之后,作者默默的高兴了一中午. 二.使用App Inspector定位弹窗元素 #弹窗中允许按键,x…
在Selenium-python 中,有时候需要对弹窗进行处理,比如获取弹窗上的内容.确定.取消.在弹窗上输入内容后点击确定-再次点出弹窗,需要专门的处理. 一.获取弹窗的内容 driver.find_element(By.XPATH,"//button[@type='submit'][@class='btn btn-primary']").click()   #点击某按钮后显示弹窗time.sleep(3)     #这里要一定做等待操作,因为等弹窗弹出后才能下一步操作,所有弹窗后操…
i春秋作家:tllm 原文来自:利用python完成大学刷课(从0到完成的思路) 最近刚刚开学,学校总是有很多让人无语的课要修,还不能不修.然后我想写一个自动修课的脚本.大佬们不要笑我 是边面向百度学selenium边写脚本的 然后踩了一些坑 记录一下 先放最终效果视频 PS:室友在打lol说看见中单 不是说我哈 哈哈哈哈 http://ow2cltt3t.bkt.clouddn.com/15d3ed600eb39af4d80c4a49088b5c06.mp4 0x01: 首先分析一下它是怎么验…
一: 获取数据 获取用例所在位置,通过OpenExcelPandas来读取用例里面的全部数据.通过某个列名来创建新的序号. 并将结果转换成list类型,将其作为ddt数据的来源. 1.  在test文件中调用数据驱动准备函数 excel_data = user_login.excel_to_list(user_login.login_excel, user_login.login_sheet, '序号') 2. 根据指定的用例来读取数据并转换成list def get_ini_file(exce…
一,弹窗处理(推荐文章:https://blog.csdn.net/huilan_same/article/details/52298460) selenium提供switch_to方法定位弹窗的对话框:alert,prompt,confirm 方法一: a = driver.switch_to.alert # 定位弹窗的对话框 driver.switch_to.alert.accept() # 点击确认 driver.switch_to.alert.dismiss() # 点击取消 drive…