首页 > 编程语言 > 详细

Python & Selenium -- 处理页面加载时间过长的问题

时间:2015-04-13 19:10:50      阅读:561      评论:0      收藏:0      [点我收藏+]

selenium webdriver在get方法会一直等待页面加载完毕才会执行后面的,可如果加载时间太长会导致后续操作无法进行。

例如:get 汽车之家页面时会等待很长时间,其实页面基本元素都已加载,可进行后续操作

可以通过set_page_load_time()方法来设定时间,

然后捕获timeout异常 并 通过执行Javascript来停止页面加载 window.stop()

from selenium.common.exceptions import TimeoutException

startTime = time.time()
print "start time is: %0.3f"%startTime
driver = webdriver.Firefox()
driver.set_page_load_timeout(30)
driver.maximize_window()

try:
    driver.get(‘http://www.autohome.com.cn/‘)
except TimeoutException:  
    print ‘time out after 30 seconds when loading page‘  
    driver.execute_script(‘window.stop()‘) #当页面加载时间超过设定时间,通过执行Javascript来stop加载,即可执行后续动作

该代码在

Python & Selenium -- 处理页面加载时间过长的问题

原文:http://my.oschina.net/u/2344787/blog/400507

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!