selenium 2 + python iframe定位

在定位页面元素的时候,有时会碰到iframe。如果iframe里有id或者name,使用switch_to_frame()可以很方便的定位到。但有时会碰到iframe里没有id或者那么的情况,这就需要其他办法去定位了。

页面结构:

方法一:从顶层开始定位,相对比较费劲。

text1 = browser.find_element_by_class_name("bodybg")text2 = text1.find_element_by_xpath("div[@class=‘Lean_overlay‘]/div[2]")text3 = text2.find_element_by_tag_name("iframe").get_attribute("src")print text3#输入iframe里的src内容,确认已经定位到iframetext = text2.find_element_by_tag_name("iframe")browser.switch_to.frame(text)

方法二:定位到上一次,然后再定位到iframe。

#找出所有class_name=qh-login的上一层元素text1 = browser.find_elements_by_class_name("qh-login")for text in text1:    if text.get_attribute("id") == "idname":        print text.get_attribute("class")        text2 = text.find_element_by_tag_name("iframe").get_attribute("src")    else:        text2 = str("定位失败了")
时间: 2024-10-26 03:05:50

selenium 2 + python iframe定位的相关文章

selenium 2 + python 窗口定位

在使用selenium 2的时候,经常会碰到打开一个页面后新页面以新窗口打开,因为脱离当前窗口需要重新定位窗口,可以用以下方法定位到需要的窗口. #父窗口是0 browser.switch_to_window(browser.window_handles[1])

Selenium with Python 003 - 页面元素定位

WebUI自动化,首先需要定位页面中待操作的元素,然后进行各种事件操作,这里我们首先介绍Selenium Python 如何定位页面元素,WebDriver 提供了一系列的方法. 定位单个页面元素(返回单个元素对象) find_element_by_id find_element_by_name find_element_by_xpath find_element_by_link_text find_element_by_partial_link_text find_element_by_tag

Python selenium PO By.XPATH定位元素报错

Python selenium PO  By.XPATH定位元素报错 如下代码经常报错: # 首页的“新建投放计划”按钮 new_ads_plan = (By.XPATH, "//*[text()='百度新闻']/..") print(type(self.new_ads_plan)) self.driver.find_element(self.new_ads_plan).click() 运行经常报错:selenium.common.exceptions.WebDriverExcepti

selenium webdriver (python)大全

webdriver的简介 硒2.0的主要新功能是集成的webdriver的API.webdriver的设计除了解决一些seleniumr-RC API的一些限制,与webdriver 的整合,将提供一个更简单,更简洁的编程接口.selenium webdriver会更好地支持动态的网页,页面本身被重新加载页面元素可能更改.webdriver的目标是提供一个设计良好的面向对象的API,提供了更好的支持现代先进的web-app测试. WebDriver与Selenium-RC相比,是如何来驱动浏览器

Selenium WebDriver + Python 环境配置

1.   下载必要工具及安装包 1.1.[Python开发环境] 下载并安装Python 2.7.x版本(当前支持2.x版本,不要下载最新的3.X的版本因为python3并非完全兼容python2) 下载地址:https://www.python.org/downloads/ 1.2.[python 的安装包管理工具]Pip pip 是python 软件包的安装和管理工具,有了这个工具,我们只需要一个命令就可以轻松的python 的任意类库. 下载地址: https://pypi.python.

Selenium基于Python 进行 web 自动化测试

From: https://www.cnblogs.com/hanxiaobei/p/6108677.html 配置使用环境 下载相应的浏览器驱动, Firefox 是默认的 本文以 chrome 为主 ,放在scripts目录下ChromeDriver 官方下载地址 : 所有版本的 ChromeDriver 文档参考 简明 Python 教程 Python教程 - 廖雪峰 官方文档 : Selenium with Python webdriver实用指南python版本 一份简单的测试 dem

selenium3 + python - table定位

前言 在web页面中经常会遇到table表格,特别是后台操作页面比较常见.本篇详细讲解table表格如何定位. 一.认识table 1.首先看下table长什么样,如下图,这种网状表格的都是table 2.HTML源码如下: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Table 测试模板</title>

Selenium 特殊元素的定位与操作

Web页面有很多特殊的元素  无法使用基本的元素定位方式定位,下面介绍几个特殊的元素定位 1.alert框 alert框只有一个确认按钮 BrowserUtil.driver.findElement(By.id("abtn")).click(); Thread.sleep(3000); Alert alert = BrowserUtil.driver.switchTo().alert(); alert.accept(); //点击确认按钮 alert.dismiss();//弹框消失

【Selenium WebDriver】元素定位函数 FindElement

定位Web页面上的元素,用FindElement函数,它可以根据元素的不同属性来快速定位.具体的属性如下: 例子: HTML页面文件: 1 <html xmlns="http://www.w3.org/1999/xhtml" lang="en-us"> 2 <head> 3 <body> 4 <form name="loginForm"> 5 <label for="username