selenium - switch_to.frame()- 內嵌表單的切換


表單嵌套frame/iframe

webDriver只能在一個頁面上對元素識別和定位,對於frame/iframe表單內嵌頁面上的元素無法直接定位,此時就需要通過switch_to.frame()方法將當前定位的主題切換為iframe表單的內嵌頁面中。
內嵌表單格式:
 
<html>
  <body>
    ...
    <iframe id="x-URS-iframe" ...>
      <html>
         <body>
           ...
           <input name="email" >

  

內嵌表單的操作:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("http://www.126.com")

driver.switch_to.frame('x-URS-iframe')
driver.find_element_by_name('email').clear()
driver.find_element_by_name('email').send_keys('llf123456')
driver.find_element_by_name('password').clear()
driver.find_element_by_name('password').send_keys('qq12345')
driver.find_element_by_id('dologin').click()
driver.switch_to.default_content()

driver.quit()

switch_to.frame() 默認可以直接取表單的id 或name屬性

如果此時在進入多級表單的情況下,還可以通過switch_to.default_content()跳回最外層的頁面
 
參考資料:http://www.testclass.net/selenium_python/more-iframe/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM