Selenium2+Python--頁面加載時間過長&啓動指定FF

* selenium webdriver在get方法會一直等待頁面加載完畢纔會執行後面的,可若是加載時間太長會致使後續操做沒法進行
* 使用指定的FF來建立driver——FirefoxBinary

1. selenium webdriver在get方法會一直等待頁面加載完畢纔會執行後面的,可若是加載時間太長會致使後續操做沒法進行。

例如:get 汽車之家頁面時會等待很長時間,其實頁面基本元素都已加載,可進行後續操做web

能夠經過set_page_load_time()方法來設定時間,spa

而後捕獲timeout異常 並 經過執行Javascript來中止頁面加載 window.stop()firefox

 1 from selenium.common.exceptions import TimeoutException
 2 
 3 startTime = time.time()
 4 print "start time is: %0.3f"%startTime
 5 driver = webdriver.Firefox()
 6 # 設定頁面加載限制時間
 7 driver.set_page_load_timeout(30)
 8 driver.maximize_window()
 9 
10 try:
11     driver.get('http://www.autohome.com.cn/')
12 except TimeoutException:  
13     print 'time out after 30 seconds when loading page'  
14     driver.execute_script('window.stop()') #當頁面加載時間超過設定時間,經過執行Javascript來stop加載,便可執行後續動做

2. 使用指定的FF來建立driver——FirefoxBinary

from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
myFF = FirefoxBinary('/root/bobo/firefox/firefox-bin')
driver = webdriver.Firefox(firefox_binary=myFF)
相關文章
相關標籤/搜索