码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2018-05-16 00:30:52      阅读:350      评论:0      收藏:0      [点我收藏+]

标签:amp   切换   _id   odi   web   coding   pytho   name   efault   

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")
12 dr.switch_to.frame("if")
13 
14 dr.find_element_by_id("kw").send_keys("selenium")
15 dr.find_element_by_id("kw").submit()
16 time.sleep(3)
17 
18 dr.close()

switch_to.frame()可以直接取表单的id或name属性。如果iframe没有可用的id和name属性。可用以下方式进行定位

......

# 先通过xpath定位到iframe
xf = driver.find_element_by_xpath(//*[@class="if"])

# 再将定位对象传给switch_to.frame()方法
driver.switch_to.frame(xf)
......
driver.switch_to.parent_frame()

还有其他方法switch_to.parent_content(), switch_to.default_content()

这些方法我都没用过

 

 

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

标签:amp   切换   _id   odi   web   coding   pytho   name   efault   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!