python+selenium,定位frame,始终报错 [问题点数:50分]

Bbs1
本版专家分:0
结帖率 0%
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
其他相关推荐
解决Selenium2Library中的select frame无法选择没有名字,没有id的frame或者iframe的问题
Selenium2Library中原有的select_frame函数(对应的关键字为select frame)可根据locator选择frame,但是,若某个frame或者iframe没有id,没有name,而页面存在多个frame或者iframe,则原函数无法实现选择该frame或者iframe的功能。其原因是原函数默认locator可以唯一选择。 解决方法为修改Selenium2Library中的select_frame函数,支持索引选择功能
Selenium frame 简单应用 元素定位
在公司做一个selenium的项目,为客户做一个外挂,方便客户操作。遇到了一个找不到元素标签的问题。  private final static String URL = "https://eustg-i.serviceportal.hp.com/";  //网站的地址  private final static String PATH = "/sm-alu/index.do?xHtoke
selenium+python 利用xpath定位元素出错
pythonIDE编写的脚本>>> from elenium import webdriver>>> from selenium import webdriver>>> b=webdriver.Firefox() >>>  b.get(r'C:\Users\PC\Desktop\ss\test.html')报错,网页打不开这...
关于python+Selenium定位元素出错的问题
总结几个我遇到的定位不到元素的情况 一、属性+层次定位 这种情况如果直接写:driver.find_element_by_id(“logout”).click() 是找不到这个元素的,应该采用以下方式定位:driver.find_element_by_xpath(“//*[@id=’logout’]/a”).click()二、跳转到frame中 这种情况就需要用这句程序来先跳转进fra
python selenium 元素定位不到,可能是有框架,需要先切换
iframe02 = driver.find_element_by_id("iframe01") driver.switch_to.frame(iframe02) createpoll = driver.find_element_by_link_text("发起问卷") #print len(createpoll) createpoll.click()一开始一直点击不到这个链接,可以先find...
Selenium遇到Iframe,无法直接准确定位
可参考: http://blog.csdn.net/huilan_same/article/details/52200586
python selenium 定位iframe(多层框架)
python selenium 定位iframe(多层框架)
页面嵌套frame,Selenium定位问题
有时候,什么定位元素的方法都试过了,还是定位不到元素,就考虑frame切换问题            driver.switchTo().frame("定位到的frame元素");            //接下来就可以在这个frame框架内定位该框架里的元素了            driver.findElement(By.name("message")).sendKey
通过切换iframe定位元素(用于Python+selenium自动化测试)
切换 iframe: 1.由于登录按钮是在iframe上,所以第一步需要把定位器切换到iframe上 2.用switch_to_frame方法切换,此处有id属性,可以直接用id定位切换 iframe 与 iframeiframe 区别: frame与iframe两者可以实现的功能基本相同,不过iframeframe具有更多的灵活性。 frame是整个页面的框架,iframe
selenium定位以及切换frame/iframe
frame需层层切,frameset不用切! 很多人在用selenium定位页面元素的时候会遇到定位不到的问题,明明元素就在那儿,用firebug也可以看到,就是定位不到,这种情况很有可能是frame在搞鬼(原因之一,改天专门说说定位不到元素,可能的一些原因及处理办法)。 frame标签有frameset、frame、iframe三种,frameset跟其他普通标签没有区别,不会影响到正常的定...
python+selenium:切入到无id,无name的iframe框架中
方法一:from selenium import webdriver driver = webdriver.Firefox() driver.switch_to.frame(0) # 1.用frame的index来定位,第一个是0 # driver.switch_to.frame("frame1") # 2.用id来定位 # driver.switch_to.frame("myframe") ...
Selenium语法、解决frame问题以及速度分析
前言Selenium是什么,看看Encyclopedia上的说明:Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9)、Mozilla Firefox、Mozilla Suite、Google Chrome等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏
selenium_webdriver(python)多层框架/窗口中元素定位问题
frame.html: frame http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/
Selenium-webdriver系列教程(五)————如何定位frame中的元素
selenium webdriver处理frame比较简单,这点比某些测试工具要先进一些,令人身心愉悦。 以下面的html代码为例,我们看一下如何定位frame上的元素。 frame.html Frame #f_1 {width: 10em; height: 10em; border: 1px solid #ccc
Selenium多层frame切换操作
假如页面结构为 <frameset> <frame id="fr1"> ... <frame id="fr2">...</frame> ... </frame> ... &amp
Selenium学习笔记之008:多层frame或者windows定位
多层框架或窗口的定位: switch_to_frame() switch_to_window() 智能等待: implicitly_wait()
Python+Selenium定位不到元素原因及解决方法(报:NoSuchElementException)
今天在写QQ邮箱登录联系的时候,发现无论通过什么定位方法都无法定位,一直报错报错内容为: selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"id","selector":"switcher_plogin"} 后来在网
selenium遇到iframe解决办法
selenium中遇到frame时无法对其进行寻常的点击操作,这时候就会用到switch_to_frame()这个函数; 这里switch_to_frame()大概有这么几种定位方式; 例如: 1.用id定位: driver.switch_to_frame("frame1")  2.用name定位: driver.switch_to_f
selenium定位以及切换frame(iframe
总有人看不明白,以防万一,先在开头大写加粗说明一下:frameset不用切,frame需层层切! 很多人在用selenium定位页面元素的时候会遇到定位不到的问题,明明元素就在那儿,用firebug也可以看到,就是定位不到,这种情况很有可能是frame在搞鬼(原因之一,改天专门说说定位不到元素,可能的一些原因及处理办法)。frame标签有frameset、frame、iframe三种,frames
Selenium多层级的iframe中元素的定位
     很多时候我们遇到多层级的iframe就会想各种方法去获取iframe中的元素,但其实很简单就可以做到的,就是一级一级获取就可以了,获取至你需要的那个层级即可,下面看下实际的案例;                                                                示例:          @Test
selenium 定位不到元素的几种情况
1.动态id定位不到元素for example:        //WebElement xiexin_element = driver.findElement(By.id("_mail_component_82_82"));        WebElement xiexin_element = driver.findElement(By.xpath("//span[contains(.,'写 信...
pyhon学习之selenium嵌套定位frame
首先我们看一看方法 def switch_to_frame(self, frame_reference): """ Deprecated use driver.switch_to.frame """ warnings.warn("use driver.switch_to.frame instead", ...
14、Selenium + Python 实现 UI 自动化测试-操作Frame(iFrame)
回顾: 还记得登录163邮箱那篇文章中遇到的问题吗?(http://blog.csdn.net/duzilonglove/article/details/78083344),今天我们来解决掉他。 一、概念 先来看下这篇文章中对Frame和iFrame的介绍: 原文地址:http://blog.csdn.net/lyr1985/article/details/6067026 这里摘
selenium python登录126邮箱错误记录
1.准备做一个登录126邮箱的操作,用Firefox的firebug查看了下用户名框的id , 密码框的id都是id="auto-id-1491067388576" 这样一类,F5刷新浏览器,重新看了下用户名框,密码框的id都是变化的,所以不能使用webdriver.get_element_by_id()定位,就用了webdriver.get_element_by_class_name(),代码
python爬虫遇到的问题:selenium引用chromedriver出现的问题
traceback Traceback (most recent call last): File "D:\Anaconda35\lib\site-packages\selenium\webdriver\chrome\service.py", line 66, in start self.service_args, env=env, stdout=PIPE, stderr=PIP...
python自动化测试开发:当frame/iframe没有可用的id或者name属性时,多表单(frame/iframe)如何进行切换
在设计自动化测试脚本时,经常会有多表单(frame/iframe)需要切换,否则无法定位到表单上的元素,在python中使用switch_to.frame()方法,具体用法如下 1、switch_to.frame()默认直接调取表单的id活name属性。 示例: driver.switch_to_frame("tabLine0_iframe") 2、如果iframe没有可用的Id或者nam...
(转)selenium之切换frame
转自:huilan_same用selenium定位页面元素的时候会遇到定位不到的问题,明明元素就在那儿,用firebug也可以看到,就是定位不到,这种情况很有可能是因为frame frame标签有frameset、frame、iframe三种,frameset跟其他普通标签没有区别,不会影响到正常的定位,而frame与iframeselenium定位而言是一样的,selenium有一组方法对fr
webdrive——frame嵌套页面元素定位,多窗口切换操作,警告弹框处理
frame嵌套页面元素定位案例:在Frame.html文件种定位搜狗搜索页面,进行搜索操作。from selenium import webdriver from time import sleepdriver=webdriver.Firefox() #设置网页文件路径,r代表路径转义 file_path=r'E:\Python_script\Webdriver\Frame.html' #路径转义另
Selenium2+Python2.0自动化测试【12】 多表单切换
1.1       多表单切换(frame和iframe)           有时定位页面元素的时候会遇到定位不到的问题,用firebug已经看到元素,可是运行脚本就是定位不到,这种情况很有可能是frame 的原因。 frame标签有frameset、frame、iframe三种,frameset跟其他普通标签一样,不影响正常的定位frame是整个页面的框架,iframe是内嵌的网页元素。
Selenium+python3 Xpath定位失败原因及分析
总结下之前遇到的错误以及导致Xpath定位失败的原因,在网上找的资料特此整理如下:<h3>一、Xpath定位方法深入探讨</h3>(1)常用的Xpath定位方法及其特点<h6>使用绝对路径定位元素。</h6>例如:driver.findElement(By.xpath("/html/body/div/form/input"))。 特点:这个路径是从网...
Java+Selenium3方法篇23-iframe切换的问题
这篇介绍webdriver在处理定位元素报错,提示没有这样的元素。这个时候,有可能是你测试的网页,采用了frame技术。什么是frame,简单来说,就是把一个网页划分成多个子页面,脑补这下这样的页面。我把一个空白的html文件,使用了frame技术后,分成两个页面,左边显示百度首页,右边显示谷歌首页。这个就是frame的简单使用。webdriver默认查找的元素都是Top window这层,如
第三个Python脚本:多层框架或窗口的定位
原URL:http://blog.csdn.net/shandong_chu/article/details/48492965本节知识点:多层框架或窗口的定位:switch_to_frame()switch_to_window()智能等待:implicitly_wait()  对于一个现代的web应用,经常会出现框架(frame) 或窗口(window)的应用,这也就给我们的定位带来了一个难题。有...
Selenium遇到的问题3 Frame定位不到163的元素
Selenium定位不到元素 报错selenium.common.exceptions.NoSuchElementException 原代码: #coding:utf-8 from selenium import webdriver driver = webdriver.Chrome() driver.get("http://mail.163.com/") driver.impli
python+selenium 定位元素异常类型及解决方法
一、ElementNotVisibleException [样例] from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Firefox() driver.implicitly_wait(10) driver.get("http://www.baidu.com
简单粗暴彻底解决selenium+chromedriver无法定位各种元素的方法
解决各种webdriver.find_element定位不准的问题
python+selenium基础-点击复选框checkbox笔记
源代码 解析: 1. 指的是 新闻那一排是 id=‘u1’ 登录是第7个字段,所以是a[7] 指的是 从扫码登录切换到用户名密码登录 指的是
通过ID定位,ID变化导致selenium无法定位到元素
最近在学习用selenium2基于python3做自动化测试,写了一个小脚本,完成360云盘的登录功能; 通过页面元素的ID定位账号输入框和密码输入框; # coding = utf-8 from selenium import webdriver driver = webdriver.Firefox() driver.get("http://c56.yunpan.360.cn/")
Python2.7+Selenium+Pycharm关于鼠标悬停隐藏元素定位的问题请教
最近初学爬虫,遇到一个困扰多时的问题希望得到大佬的指点。 如图,正常浏览器操作时,鼠标悬停会显示【点击可预订会议室】,F12隐藏部分代码: 这是我定位的句子 driver.find_element_by_xpath("//div[@class='pop-over-tip']/div/div[2]") 然后就是我遇到的问题: 模拟鼠标悬停时经常会出现无法定位隐藏元素的现象,最...
frame 嵌套页面定位元素方法
在使用Python+Selenium自动 frame 嵌套页面化工具进行元素定位时,经常会遇到 frame 嵌套页面,直接定位是无法定位到的,这个时候就需要通过 switch_to_frame() 方法将当前定位的主体切换了 frame 里。
python 爬虫—selenium(切换frame以及滚动条操作)
python 中使用 selenium–操作滚动条 from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.action_chains import ActionChains import time driver =...
python+selenium元素定位--xpath定位--层级与逻辑组合定位
其他元素非唯一时,又不想用xpath绝对定位时,需要用到层级与逻辑定位.例:百度界面,在搜索框内输入“”1.层级属性结合定位原理:假设元素没有class、name、id等,可以找父节点元素,父级节点没有id时,可以继续往上找id,定位到id元素后,依次往下找。通过标签定位。层级定位最多一到两级。测试脚本:find_element_by_xpath("//form[@id='form']/span/...
python+selenium初级(6)—通过切换iframe定位元素
1.frame和iframe的区别: frame是整个页面的框架,iframe是内嵌的框架 Iframe标记又叫浮动帧标记,可以用它将一个HTML文档嵌入在一个HTML中显示。它和Frame标记的最大区别是在网页中嵌入 的所包含的内容与整个页面是一个整体,而所包含的内容是一个独立的个体,是可以独立显示的。另外,应用Iframe还可以在同一个页面中多次显示同一内容,而不必重复这段内 容的代码
selenium webdriver + java 进行元素定位时的页面跳转问题
在使用selenium-Java对元素进行定位时,初学者经常遇见以下两种问题:问题一:在当前页面进行跳转时,提示 Unable to locate element原因:driver在打开网页时,网页加载速度过慢,导致接下来的语句找不到元素;问题二:在页面跳转时产生窗口切换,提示Unable to locate element原因:窗口句柄还停留在上一个页面,需要对窗口进行切换,获得当前句柄之后,再...
Selenium定位失败解决方案系列:对象在iframe/frame中未switchTo().frame就操作对象--如何隐式去掉switchTo().frame
在Selenium中,如果操作的对象在iframe/frame中未switchTo().frame就操作对象,Selenium会报异常找不到对象,脚本终止执行,然后在DOM树中找到该对象所在iframe/frame的ID或者index,使用switchTo().frame方法切入iframe/frame,然后才能正确定位和操作该对象,操作完成后,使用switchTo().defaultConten
selenium+webdriver+python定位不到元素的原因及解决办法
定位元素过程中,总会遇到这样那样的问题,下面就最近遇到的4大类问题,得到的解决方法,来做个总结。 1. xpath描述错误的 这个是因为在描述路径的时候没有按照xpath的规则来写 造成找不到元素的情况出现 2.动态id定位不到元素 在工作过程中,有时候会遇到类似这样的动态id //*[@id=”listbg00.42585085760747465”]/td[3]/img
Python Selenium递归遍历frame定位元素
递归遍历frame 经常用selenium定位元素时,定位方式试过,就是报找不到元素,然后发现元素在另一个frame里面,需要切换,多个frame的话,需要切来切去,十分不方便。这里封装一个方法findElement,可以递归遍历所有frame,一个个去找这个元素,直到找到为止,分享之。 # -*- coding:utf-8 -*- from selenium import webdr
selenium+python 文本框输入中文和特殊字符串,报错处理
selenium+python在进行web测试时,对如下的语句报错( 'utf8' codec can't decode byte 0xe6 in position 0: unexpected end of data): driver.find_element_by_name("group-name").send_keys("134#¥") 解决后的语句(前面加个小u 就
解决webdriver定位#document内元素
#document  ... ...        ...     ...   可通过mydriver.switch_to_frame()定位到iframe位置,然后通过正常find_element方法查找定位所要查看的元素即可
Python+Selenium练习篇之4-利用link text定位元素
本文介绍如何通过link text 来定位页面元素,我们打开网页,一些可以点击的链接跳转上面的文字,就是link text,用百度首页举例来看: 在上面图中,这一排上面的文字都是link text,例如我们要通过“新闻”这个文本字段来定义这个跳转链接元素。 脚本如下: # coding=utf-8 from selenium import webdriver driver
selenium 处理 一个页面两个相同id的定位
selenium 处理 一个页面两个相同id的定位
selenium中无法通过id定位邮箱登录页面输入框元素的解决办法
这个问题困扰了我好久,当定位百度搜索框的元素通过id定位并不会报错,但是我要在登录界面定位用户名密码框时就报错我个人认为原因是我们每次登录时的id会改变,所以无法通过id准确定位到element,因此我这边换了一种方式,通过xpath定位解决了这个问题。通过id定位得到的错误代码:#coding=utf-8from selenium import webdriverimport timeurl='...
解决 Selenium文件上传框无法识别的问题
其实很多人在使用selenium 做自动化的时候都会遇到这样子的一个问题,就是要进行文件的上传。对于简单一些的元素 如 这种可能可以通过直接的sendkey进行赋值,但是对于flash的这种 selenium就无能为力了。并且还得操作windows的文件上传框。这也是selenium的一个软肋 最近在测试web的时候每次执行测试用例都需要去上传各种格式的文件。这真的是苦了我了。所以抽空就去看看web
Python网络数据采集
Python
FF上selenium IDE的基础知识--脚本元素定位
本来是自己用selenium接口写自动化测试代码,结果在编写过程中遇到了点问题,期间看到一本关于selenium的书,是基于FF上的,就拿来研究研究。 1.“文件”菜单 (1)该菜单下的命令主要对用例进行新建、打开、保存、导出等操作;以及对测试用例集的新建、打开、保存、输出等操作; (2)Save Test Case As:在弹出的对话框中输入要保存的测试用例的别名; (3)New Tes
Python+Selenium定位不到元素常见原因及解决办法(报:NoSuchElementException)
在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况(报selenium.common.exceptions.NoSuchElementException),一般可以从以下几个方面着手解决: 1.Frame/Iframe原因定位不到元素:   这个是最常见的原因,首先要理解下frame的实质,frame中实际上是嵌入了另一个页面,而webdriver
【2018.05.09】python3.6 + selenium 定位之 鼠标事件操作+键盘事件操作
#coding = utf-8 ''' 鼠标事件操作: ''' from selenium import webdriver from selenium.webdriver.common.action_chains import * #需要加载项 driver = webdriver.Chrome() driver.get('https://www.baidu.com') driver.im...
selenium3+JAVA】界面自动化测试教程(七)——frame切换方法
selenium的使用过程中,有时候会发现网站会有frame这种东西,如果某个元素在frame中,直接进行查询是无法查询到的,那么这时候就需要先切换frame再进行元素查找; 1.切换到顶层frame: driver.switchTo().defaultContent(); 2.切换到frame: 通过元素直接切换 WebElement element = driver.find...
python-selenium(webdriver)中的自动截屏并获取验证码的位置
因为最近在搞一个购票的一个爬虫需要获取当前验证码的位置信息进行打码,因为是用的selenium测试工具所以在网上找了多个资料搞出来的,记录下一成果。# encoding:utf-8 from PIL import Image from selenium import webdriverurl = '网站地址' driver = webdriver.Chrome() driver.maximize_w
第十节:定位以及切换frame(iframe
在 web 应用中经常会遇到 frame 嵌套页面的应用,而 WebDriver 每次只能在一个页面上识别元素,对于 frame 嵌套内的页面上的元素,直接定位定位定位不到的。 frame标签有frameset、frame、iframe三种,frameset跟其他普通标签没有区别,不会影响到正常的定位,而frame与iframeselenium定位而言是一样的,selenium
selenium 通过class 定位失败可能的原因
目前发现一种情况需要注意,如以后发现其他情况,会及时补充,如果各位法相特殊情况,请不吝赐教:    当classname 中存在空格的时候,直接使用find_element_by_class_name时,会显示定位失败,此时,需要将classname中的空格替换成英文的点“.”,如下图: 此时如果使用  find_element_by_class_name("link
轻松自动化---selenium-webdriver(python) (四)--如何定位一组元素?
场景 从上一节的例子中可以看出,webdriver可以很方便的使用findElement方法来定位某个特定的对象,不过有时候我们却需要定位一组对象, 这时候就需要使用findElements方法。   定位一组对象一般用于以下场景: · 批量操作对象,比如将页面上所有的checkbox都勾上 · 先获取一组对象,再在这组对象中过滤出需要具体定位的一些对象。比如定
selenium+python截图不成功
selenium+python,使用webdriver的截图函数get_screenshot_as_file()截图,代码如下: from selenium import webdriver from time import sleep driver=webdriver.Chrome() driver.get("https://www.baidu.com") driver.find_elem
selenium使用classname定位错误
在执行时,报错:Compound class names not permitted,意思是不允许使用复合类名称分析:className的参数仅允许是一个class,此处placeholder E_passwd是复合名,使用会报错,用E_passwd即可...
selenium 定位不到元素的原因及解决办法
1.动态id定位不到元素for example: //WebElement xiexin_element = driver.findElement(By.id("_mail_component_82_82")); WebElement xiexin_element = driver.findElement(By.xpath("//span[contains(.,'写
EasyUI selenium自动化的一些总结
最近一直在做关于EasyUI的自动化测试,以下是一些总结,包含几个常用函数,还有一些小技巧 1、读取一张表中的某个数据的函数 def res(self,row,column):         driver = self.driver         if row == 1:             xpath = "/html/body/form/table[2]/
Python爬虫进阶之selenium定位不到元素的几种情况和解决方法
1>动态ID,每次调用页面出现的元素的ID会动态随机分配。解决方案:推荐使用xpath的相对路径方法查找到该元素。2>内嵌页面Iframe,导致无法定位到Iframe的页面元素。解决方案:driver.switchTo().frame(Id/name/element)来进行进入指定id/name/element的iframe内嵌页面中,从而可以定位iframe内部元素。具体来说:如果i...
selenium 定位不在屏幕范围内的元素
       前段时间,用selenium写自动化测试的时候,需要定位一个不在屏幕范围内的元素,后来查阅资料,可以通过移动滚动条,把需要定位的元素移动到屏幕范围内,即可   WebElement selectedRow = driver.findElement(By.xpath("//div[@class='gridScroller']/div[@class='gridTbody']/ta...
selenium通过xpath定位元素不准确的原因
通过xpath定位元素,但是找到的元素跟预期不一样。原因可能是:已经找到了某个元素a并赋值给了一个element,想要用a直接寻找下级元素,这时使用xpath时就要在//前面加个点,比如说:a.fineElement(By.xpath(" . //input"));   (//前面那个点,划重点,楼主就是漏掉了点,所以找到的元素一直都不对)顺便,`.`代表当前节点; '..'代表父节点通过xpat...
selenium窗口操作以及使用selenium定位iframe内部标签元素
1. 标签内部存在iframe,普通的方式无法直接定位到iframe内部的标签元素。需要切换;2. 一个浏览器对象,存在多个标签选项卡。需要切换。定位iframe内部标签元素登录QQ邮箱为列:#import time from selenium import webdriver from selenium.webdriver.common.by import By from selenium.we...
python+selenium几种常见的定位方法(整合)
此处整合两篇文章 第一部分是基本的定位方法;第二部详细介绍了通过XPATH定位(.find_element_by_xpath). 第一部分:   下面我将复制该文章的部分内容,若要查看完整内容,请点击原文地址查看   Python:   1)查找元素的ID。       from selenium import webdriver       bro
Python使用Selenium测试WebApp在定位元素和使用元素属性报的莫名其妙错误的终极解决方法
1   selenium.common.exceptions.ElementNotVisibleException: Message: Element is not currently visible and so may not be interacted with... 2   selenium.common.exceptions.StaleElementReferenceException
selenium定位不到元素的几种情况和解决方法
1>动态ID,每次调用页面出现的元素的ID会动态随机分配。 解决方案:推荐使用xpath的相对路径方法查找到该元素。 2>内嵌页面Iframe,导致无法定位到Iframe的页面元素。 解决方案:driver.switchTo().frame(Id/name/element)来进行进入指定id/name/element的iframe内嵌页面中,从而可以定位iframe
Python+Selenium练习篇之28-处理iframe切换
本文介绍如何利用Selenium中方法,在不同iframe中切换。 问题:有时候我们发现元素定位没问题,在测试回放的过程,发现就是找不到元素报错。 由于没有找到合适的iframe网站,这里不好用代码举例,简单文字加图片来介绍。 自己写了一个网页,利用iframe网页框架,把网页分成上下两个不同iframe控制的页面,把下面html代码保存到一个记事本,然后修改名称为iframe-demo.h
selenium 获取当前框架、窗体焦点
selectFrame(locator) 在当前窗体中选择一个框架(你可以多次调用这个命令用于选择嵌套框架)。要选择父框架,用”relative=parent”作为定位器;要选择顶级框架,用”relative=top”。你同样可以通过基于0的索引号选择框架;用”index=0”选择第一个框架,或者用”index=2”选择第三个框架。   selectWindow(windowID) 选择一
Selenium webdriver报元素不可点击
初学者 用IDE录制的内容,保存成python脚本,运行各种报错,多数都是找不到元素或者元素不可点击之类的 目前分析有几种原因: 1. 服务器响应慢,元素还没有显示出来 2. 元素不在当前window或frame 对应解决办法: 1. 设置等待,判断元素是否存在 2. 用switch_to.window(windowName) 和 switch_to.frame(frame)
selenium 定位不到非select下拉框的问题解决
  图一是下拉列表,图二是对应的页面代码,一直尝试用id定位,和class定位,还有直接copy xpath,一直显示定位不到,后面修改xpath='//li[text()="chenxiaoxia"]'终于可以 总结:不能太依赖xpath的自动生成,应该自己修改一下,才能精准定位。    ...
python+selenium下拉框Input方式定位
1.通过select 进行定位下拉框
selenium-Python之定位下拉框选择
from selenium.webdriver.support.ui import Select # 通过index进行选择 Select(driver.find_element_by_id("prodType")).select_by_index(01) # 通过value进行选择 Select(driver.find_element_by_id("prodType")).select_by
Selenium Webdriver弹出框的种种类型
转自:http://www.webdriver.org/article-32-1.html 测试过程中,我们经常会遇到许多的弹出框去处理,比如登陆的用户名密码输入,或是页面的警告,还或者是新页面弹出,本文我们就来将这些分类下,并解释下如何处理不同的弹出框。 普通弹出框 div   一般这种 弹出框都属于dom的一部分,我们查看一下页面源码就可以定位到改弹出框
selenium之 一个不常用但又很有用的方法(switch_to.active_element),获取当前焦点元素
今天我们讲讲switch_to家中的一个异类:switch_to.active_element,当然,我们先普及一下其他的家族成员。1.switch_toselenium做自动化的过程中,经常会遇到alert、frame和新的window,这是经常是switch_to家族大展拳脚的时候,先看看switch_to家族的成员: alert ——返回浏览器的Alert对象,可对浏览器alert、co
Python+Selenium练习篇之8-利用css定位元素
前面介绍了,XPath, id , class , link text, partial link text, tag name, name 七大元素定位方法,本文介绍webdriver支持的最后一个方法:by_css。css和XPath类似,也需要掌握一些语法,才能写出正确的,完整的css选择表达式。相关w3c介绍,请点击这里。 相关脚本代码如下: # coding=utf-8 from
Selenium+Python之下拉菜单的定位
1.通过select 进行定位下拉框 下拉框如图所示    通过代码定位 #通过index进行选择 Select(driver.find_element_by_id("cardType")).select_by_index(1) #通过value进行选择 #Select(driver.find_element_by_id("cardType")).select_by_value(1...
selenium中如何定位伪元素
定位方法: driver.find_element_by_css_selector(‘div.panel-body>div’)
六.python+selenium元素定位之tag_name二次定位
tag_name是使用标签进行定位 这里用自己写了一个HTML来进行演示,请点击下载HTML中的lizi.html  密码:ww8k 首先定位到lizi中的选项下拉框标签,就是点击一下Volvo定位该元素: 该元素是属于select+option构成,那么先根据tag_name找到第一个标签select,再去select标签下找option标签 以下是演示: 遍历循环点击option...
关于Python+selenium 定位浏览器弹窗元素
我也是刚学自动化,在自学过程中发现浏览器中有一些弹窗元素,无法定位。经过自己的摸索,有一些心得,写下来供日后自己回顾。 首先要确定弹窗的类型: (1)div弹窗 (2)新标签页弹窗 (3)alert弹窗 一,div弹窗 div弹窗是浏览器中比较好定位的弹窗,定位的方法与普通的元素一样。不过这里会有一个坑,明明可以找到这个按钮,但是就是定位不到。这个就是因为当前有div弹窗弹出的时候,...
Python+Selenium的元素定位方法(xpath)
【环境】 Python3.6+selenium3.0.2+FireFox50+win7 【定位方法】 1、方法:find_element_by_xpath('') 说明:xpath定位方法有相对路径和绝对路径之分,当元素层级较多时,绝对路径会很长; 相对路径具有布尔逻辑运算。 缺点: 1)性能差,定位元素的性能比其他方式差; 2)稳定性差,Xpath会随着页面布局元素的改变而改变;
selenium之 浏览器导航栏的三个按钮(back、forward、refresh)
今天这几个方法非常简单,就是我们能看到的浏览器导航栏的三个按钮:后退、前进、刷新 driver.back() driver.forward() driver.refresh() 不多说,上代码试试# -*- coding: utf-8 -*-from selenium import webdriver from time import sleepdriver = webdriver.
selenium2与python自动化4-css元素定位
前言大部分人在使用selenium定位元素时,用的是xpath定位,因为xpath基本能解决定位的需求。css定位往往被忽略掉了,其实css定位也有它的价值,css定位更快,语法更简洁。这一篇css的定位方法,主要是对比上一篇的xpath来的,基本上xpath能完成的,css也可以做到。两篇对比学习,更容易理解。一、css:属性定位    1.css可以通过元素的id、class、标签这三个常规属...
python +selenium ,元素定位之xpath ,根据元素的文本属性来定位
例如 源码里面含有这样的:<a class="btn_green big w90" onclick="add_topic(this);" href="javascript:;">+ 新增一题</a>这个是一个按钮,需要识别,并点击add_topic = driver.find_element_by_xpath("//a[text()='+ 新增一题']") add_topi
selenium-八大定位
原地址:https://www.cnblogs.com/qingchunjun/p/4208159.html在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素。其中By类的常用定位方式共八种,现分别介绍如下。1. By.name()假设我们要测试的页面源码如下:<button id="gbq...
python selenium 元素定位和页面操作
目录 一、浏览器操作 二、简单对象的定位 三、操作测试对象 四、鼠标事件 五、键盘事件 六、获取页面的title和url  七、设置等待时间  八、定位一组对象 九、层级定位 十、多表单切换 十一、多窗口切换  十二、警告窗处理 十三、上传文件 十四、调用javascript 十五、控制浏览器滚动条 十六、获取元素对象的属性值  十七、获取验证码问题 一、浏览器...
python+selenium初级(10)—八大定位方法
selenium定位有八种方法,id、name、class、tag、link_text、partial_link_text、css、xpath 1.利用id定位元素 #coding=utf-8 from selenium import webdriver import time driver =webdriver.Firefox() driver.get('http://rc.dodowo
selenium(python)定位(查找)元素的方法小结
有多种方法可以在网页中定位元素。你可以为你的项目选择最合适的那一个。selenium提供以下方法用于在网页中定位元素。 如果匹配到多个元素将默认返回第一个。 find_element_by_id(属性) find_element_by_name(属性) find_element_by_xpath(根据xpath语法) find_element_by_link_text(根据链接文字定位) find
selenium 元素可以定位到,但是无法点击问题
报错selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (82, 12). Other element would receive the click: 元素被覆盖,无法点击 描述:页面元素可以定位到,但是无法点击click。
Python+Selenium练习篇之7-利用name定位元素
本文介绍如何通过节点中name的值来定位这个web元素。还是来看百度首页搜索输入框,通过name的值来定位。 相关脚本代码: # coding=utf-8 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(6) dri
python selenium 下拉列表定位
python selenium 下拉列表定位
我们是很有底线的