1.  pageLoadTimeout;

pageLoadTimeout方法用来设置页面完全加载的超时时间,完全加载即页面全部渲染,异步同步脚本都执行完成。没有设置超时时间默认是等待页面全部加载完成才会进入下一步骤,设置超时时间3s是加载到3s时中断操作抛出异常;

driver.manage().timeouts().setScriptTimeout(3,TimeUnit.SECONDS);

2.  setScriptTimeout

设置异步脚本到超时时间,用法同pageLoadTimeout一样,异步脚本也就是有async属性的异步脚本,可以在页面解析的同时执行;

(我一般会使用这个解决读取超时问题,用pageLoadTimeout不知道为什么不起作用)

3.  implicitlyWait

识别对象的超时时间,如果在设置的时间内没有找到就抛出一个NoSuchElement异常,用法参数和上述一样;

4. driver.set_page_load_timeout

使用selenium爬取人大经济论坛,登陆的时候,页面一直不加载完成,一直在刷新,应该是强制登陆页面一直刷新。
用webdrive的get方法,只能在页面加载完成后才能后续操作,所以,设置了强制加载时间。
这个设置会抛出一个timeout错误,使用pass处理后,继续后边的操作。
后面的操作里又要在webdriver的返回值里查找,
查找的时候,又抛出异常

driver = webdriver.Chrome()
driver.set_page_load_timeout(10)

try:
    driver.get('http://bbs.pinggu.org/plugin.php?id=dsu_paulsign:sign')
except:    # 异常处理
    pass                # 当页面加载时间超过设定时间,执行后续动作

Python selenium webdriver设置加载页面超时的更多相关文章

  1. Python selenium webdriver设置js操作页面滚动条

    js2 = "window.scrollTo(0,0);" #括号中为坐标 当不知道需要的滚动的坐标大小时: weizhi2 = driver.find_element_by_id ...

  2. 自动化测试selenium + request + 动态加载页面

    # demo01from selenium import webdriver from time import sleep bro = webdriver.Chrome(executable_path ...

  3. 爬虫再探实战(三)———爬取动态加载页面——selenium

    自学python爬虫也快半年了,在目前看来,我面临着三个待解决的爬虫技术方面的问题:动态加载,多线程并发抓取,模拟登陆.目前正在不断学习相关知识.下面简单写一下用selenium处理动态加载页面相关的 ...

  4. Python+Selenium爬取动态加载页面(2)

    注: 上一篇<Python+Selenium爬取动态加载页面(1)>讲了基本地如何获取动态页面的数据,这里再讲一个稍微复杂一点的数据获取全国水雨情网.数据的获取过程跟人手动获取过程类似,所 ...

  5. Python+Selenium爬取动态加载页面(1)

    注: 最近有一小任务,需要收集水质和水雨信息,找了两个网站:国家地表水水质自动监测实时数据发布系统和全国水雨情网.由于这两个网站的数据都是动态加载出来的,所以我用了Selenium来完成我的数据获取. ...

  6. Python+Selenium自动化-设置浏览器大小、刷新页面、前进和后退

    Python+Selenium自动化-设置浏览器大小.刷新页面.前进和后退   1.设置浏览器大小 maximize_window():设置浏览器大小为全屏 set_window_size(500,5 ...

  7. Python +selenium之设置元素等待

    注:本文转载http://www.cnblogs.com/mengyu/p/6972968.html 当浏览器在加载页面时,页面上的元素可能并不是同时被加载完成,这给元素的定位增加了困难.如果因为在加 ...

  8. Python Selenium Webdriver常用方法总结

    Python Selenium Webdriver常用方法总结 常用方法函数 加载浏览器驱动: webdriver.Firefox() 打开页面:get() 关闭浏览器:quit() 最大化窗口: m ...

  9. Python+Selenium自动化-设置等待三种等待方法

    Python+Selenium自动化-设置等待三种等待方法   如果遇到使用ajax加载的网页,页面元素可能不是同时加载出来的,这个时候,就需要我们通过设置一个等待条件,等待页面元素加载完成,避免出现 ...

随机推荐

  1. 【转载】在linux下别用zip 用tar来压缩文件 zip解压后还是utf-8 window10是GBK

    3.2 使用 unzip 命令解压缩 zip 文件 将 shiyanlou.zip 解压到当前目录:   $ unzip shiyanlou.zip 使用安静模式,将文件解压到指定目录:   $ un ...

  2. centos7 端口3306无法连接问题

    MySQL建用户的时候会指定一个host,默认是127.0.0.1/localhost,那么这个用户就只能本机访问,其它机器用这个用户帐号访问会提示没有权限,host改为%,表示允许所有机器访问. G ...

  3. 分析abex-crackme#1

    1.分析环境2.运行程序,了解大致的运行过程3.运行Ollydbg调试程序3.1.分析结果简述4.破解4.1.方法一4.2.方法二5.运行结果6.与书中不同之处 1.分析环境 操作系统:Win10 1 ...

  4. selenium之 chromedriver与chrome版本映射表(更新至v2.46)

    chromedriver版本 支持的Chrome版本 v2.46 v71-73 v2.45 v70-72 v2.44 v69-71 v2.43 v69-71 v2.42 v68-70 v2.41 v6 ...

  5. java8 LocalDateTime转unix时间戳(带毫秒,不带毫秒)

    转载自:LocalDateTime To Timestamp Epoch Seconds And Milliseconds Convert LocalDateTime to seconds since ...

  6. AD16 PCB重新定义板型时没有Redefine Board Shape

    1.高版本的AD都没有“Redefine Board Shape” 2.在Keep-Out-Layer层,做好了板子的外形,把外形都选中后,然后快捷键D-S-D即可.

  7. error: ModuleNotFoundError: No module named 'ConfigParser'

    (env2.7) Kaitlyns-Mac:bin kaitlyn$ pip install MySQL-python Looking in indexes: https://pypi.tuna.ts ...

  8. nova client和nova restfull api区别

    1.nova client封装了获取认证 获取token等东西 2.nova  client提供shell cli方式访问和import client 然后new client的方式访问 区别: 通过 ...

  9. 如何高效的学习 TensorFlow 代码?

    https://www.zhihu.com/question/41667903 Linux[公共基础]:TensorFlow的主要运行平台之一就是Linux,但是正式版对Windows的支持日趋完善, ...

  10. eclipse 安装 maven

    一共需要3个步骤,1 安装maven环境   2  安装eclipse的maven插件   3 配置eclipse的maven环境 1. 安装maven环境 1.1  下载    去网址http:// ...