selenium2与python自动化5-iframe和163邮箱登录
生活随笔
收集整理的這篇文章主要介紹了
selenium2与python自动化5-iframe和163邮箱登录
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Frame和iframe兩者可以實現(xiàn)的功能基本類似,不過iframe比Frame使用起來更加靈活,Frame不能脫離frameset單獨使用,而iframe可以,frame不能放在body中,否則不能正常顯示,而iframe可以和body結(jié)合使用,
嵌套在frameSet中的iframe必需放在body中,不嵌套在frameSet中的iframe可以隨意使用。
frame的高度只能通過frameSet控制;iframe可以自己控制,不能通過frameSet控制
區(qū)別:
? ?frame是整個頁面的框架,iframe是內(nèi)嵌的網(wǎng)頁元素,也可以說是內(nèi)嵌的框架,可以用它將一個HTML文檔嵌入在另一個HTML中顯示。
最大區(qū)別是網(wǎng)頁中嵌入<Iframe>包含的內(nèi)容與整個頁面是一個整體,而<Frame>包含的內(nèi)容是獨立的個體,是可以獨立顯示的。
另外,Iframe還可以在頁面中多次顯示同一內(nèi)容,而不必重復(fù)這段內(nèi)容的代碼。
? 以163郵箱登錄為例:
利用firebug進行元素審查
由于登錄按鈕是在iframe上,因此首先進行切換到iframe上,使用switch_to_frame方法。
#coding:utf-8 from selenium import webdriver import timedriver = webdriver.Firefox()driver.get("https://mail.163.com/") driver.implicitly_wait(30)#切換iframe driver.switch_to_frame("x-URS-iframe") driver.find_element_by_name("email").send_keys("account") driver.find_element_by_name("password").send_keys("password") #driver.find_element_by_id("auto-id-1527894307806").click() driver.find_element_by_id("dologin").click() time.sleep(3) #進入到提示界面 #driver.find_element_by_class_name("u-btn u-btn-middle3 f-ib bgcolor f-fl").click() driver.find_element_by_link_text(u"繼續(xù)登錄").click()time.sleep(3) #釋放iframe,重新返回到主頁 driver.switch_to_default_content()driver.quit()總結(jié)
以上是生活随笔為你收集整理的selenium2与python自动化5-iframe和163邮箱登录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: selenium2与python自动化4
- 下一篇: selenium2与python自动化6