zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Python3.x:selenium获取iframe内嵌页面的源码详解编程语言

Python3源码编程语言 详解 获取 页面 iframe selenium
2023-06-13 09:11:43 时间

在一些网页中经常会看到ifrmae/frame标签,iframe是嵌入式框架一般用来在已有的页面中嵌入另一个页面,当一个元素在iframe里时我们应该先切换到iframe里面。

1.进入iframe
iframe = self.driver.find_element_by_xpath("//iframe[contains(@src,https://************/auth?e_p=1 response_type=token)]") 

self.driver.switch_to.frame(iframe)
2.释放/退出iframe
driver.switch_to_default_content()
# python3 

# author lizm 

# datetime 2018-01-27 10:00:00 

 Demo;selenium获取iframe内嵌页面源码 

 获取select下拉选项 

from selenium import webdriver 

#打开浏览器(不弹出浏览器页面) 

driver = webdriver.PhantomJS() 

#打开浏览器 

#driver = webdriver.Chrome() 

#最大化浏览器 

#driver.maximize_window() 

#打开页面 

driver.get("http://*************/center_tjbg.shtml") 

#通过contains函数,提取匹配特定文本的所有元素 

frame = driver.find_element_by_xpath("//iframe[contains(@src,http://**************/cms-search/monthview.action?action=china channelFidStr=e990411f19544e46be84333c25b63de6)]") 

#进入iframe页面 

driver.switch_to.frame(frame) 

#获取select标签 

select = driver.find_element_by_id("channelFidStr") 

# 获取select里面的option标签,注意使用find_elements 

options_list=select.find_elements_by_tag_name(option) 

# 遍历option 

for option in options_list: 

 #获取下拉框的value和text 

 print ("Value is:%s Text is:%s" %(option.get_attribute("value"),option.text)) 

#点击查询按钮事件 

#driver.find_element_by_css_selector("input[class = btn]").click() 

#退出iframe 

driver.switch_to_default_content() 

driver.quit()

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/16774.html

cjavapython