W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
?selenium.webdriver
?模塊提供了所有 ?WebDriver
?的實(shí)現(xiàn),現(xiàn)在支持的?WebDriver
?的實(shí)現(xiàn)有 ?Firefox
?,?Ie
?,?Chrome
?,?Remote
?。Keys
?類提供了鍵盤的代碼(回車,?ALT
?,?F1
?等等)。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
然后我們創(chuàng)建一個(gè)?Firefox
?的實(shí)例:
driver = webdriver.Firefox()
?driver.get
?方法會導(dǎo)向給定的URL的頁面,?WebDriver
?會等待頁面完全加載完(就是?onload
?函數(shù)被觸發(fā)了),才把程序的控制權(quán)交給你的測試或者腳本。 但是如果你的頁面用了太多的AJAX,那么這個(gè)機(jī)制就沒什么用了,因?yàn)樗恢理撁娴降资鞘裁磿r(shí)候加載完。
driver.get("http://www.python.org")
?WebDriver
?提供了一系統(tǒng)類似于?find_element_by_*
?的方法來尋找頁面元素,例如,我們利用?find_element_by_name
?方法,通過元素的?name
?屬性來定位一個(gè)文本輸入框元素。 更詳細(xì)的尋找元素的方法可以參閱 selenium 元素定位:
elem = driver.find_element_by_name("q")
接著我們發(fā)送了一些字符,類似于用鍵盤直接輸入。特殊的鍵盤符我們可以導(dǎo)入?selenium.webdriver.common.keys
?,然后用?Keys
?類來表示:
elem.send_keys("pycon")
elem.send_keys(Keys.RETURN)
提交頁面之后我們應(yīng)該確認(rèn)一下是否有返回,為了確定有東西返回,我們在這里下一個(gè)斷言:
assert "No results found." not in driver.page_source
最后瀏覽器窗口被關(guān)閉了,你也可以調(diào)用?quit
?方法來代替?close
?,區(qū)別在于?quit
?會退出整個(gè)瀏覽器,而?close
?只會關(guān)閉一個(gè)標(biāo)簽,但是如果瀏覽器只有一個(gè)標(biāo)簽,那么這兩個(gè)方法完全一樣,都會關(guān)閉整個(gè)瀏覽器。
driver.close()
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: