1 # -*- coding:utf-8 -*- 2 """ 3 經過 id 或 name 識別處理 fram 框架 4 """ 5 6 from selenium import webdriver 7 8 driver = webdriver.Firefox() 9 driver.get(r'F:\電子書\selenium\Selenium Testing Tools Cookbook(中文)\demo\frame\frame.html') 10 driver.switch_to_frame('left') 11 leftMsg = driver.find_element_by_tag_name('p').text 12 print leftMsg 13 14 #回到初始的焦點 15 driver.switch_to_default_content() 16 17 #經過 name 定位到右邊的框架 18 driver.switch_to_frame('right') 19 20 rightMsg = driver.find_element_by_tag_name('p').text 21 22 print rightMsg
1 # -*- coding:utf-8 -*- 2 """ 3 經過 index 焦點獲取 frame 框架 4 """ 5 6 7 from selenium import webdriver 8 9 driver = webdriver.Firefox() 10 driver.get(r'F:\電子書\selenium\Selenium Testing Tools Cookbook(中文)\demo\frame\frame.html') 11 #經過 index 定位框架 12 #index 從 0 開始 13 driver.switch_to_frame(1) 14 15 middleMsg = driver.find_element_by_tag_name('p').text 16 17 print middleMsg
1 # -*- coding:utf-8 -*- 2 """ 3 經過頁面內容獲取 frame 框架 4 """ 5 6 from selenium import webdriver 7 8 driver = webdriver.Firefox() 9 driver.get(r'F:\電子書\selenium\Selenium Testing Tools Cookbook(中文)\demo\frame\frame.html') 10 11 #獲得頁面中全部的 frame 元素 12 frames = driver.find_elements_by_tag_name('frame') 13 14 #經過頁面內容獲得頁面中間的框架 15 for i in frames: 16 driver.switch_to_frame(i) 17 if "middle" in driver.page_source: 18 break 19 else: 20 #沒有匹配到的時候回到最初頁面 21 driver.switch_to_default_content() 22 23 actualText = driver.find_element_by_tag_name('p').text 24 print actualText 25 print 'i am middle page' == actualText