安装retrying模块:

win10用户在联网的情况下直接在cmd.exe里面键入"pip install retrying"  即可安装retrying模板

在网页正常浏览的过程中,如果发生过慢的情况,我们会重新加载页面,在代码中,如果我们要实现重新加载页面,就需要使用到retrying模块了

retrying 模块的使用

使用retrying模块提供的retry模块
通过装饰器的方式使用,让被装饰的函数反复执行
retry中可以传入参数stop_max_attempt_number,让函数报错后继续重新执行,达到最大执行次数的上限,如果每次都报错,整个函数报错,如果中间有一个成功,程序继续往后执行

import requests
from retrying import retry @retry(stop_max_attempt_number=3)
def get12306():
print('123')
url = "https://www.12306.cn/mormhweb/"
response = requests.get(url,timeout=0.001)
print(response.content.decode())
if __name__ == '__main__':
try:
get12306()
except:
print('finish') 我们使用timeout属性营造出一种网速慢的情况

如果每次请求都失败的话,会重复加载三次

但如果成功一次,就不再重新加载直接停止,即第一次便成功加载进去的话,便只运行一次

import requests
from retrying import retry @retry(stop_max_attempt_number=3)
def get12306():
print('123')
url = "https://www.12306.cn/mormhweb/"
response = requests.get(url,timeout=3) # 使其停顿3秒
print(response.content.decode())
if __name__ == '__main__':
try:
get12306()
except:
print('finish')


												

retrying模块的安装及使用的更多相关文章

  1. retrying模块的学习

    retrying模块的学习 我们在写爬虫的过程中,经常遇到爬取失败的情况,这个时候我们一般会通过try块去进行重试,但是每次都写那么一堆try块,真的是太麻烦,所以今天就来说一个比较pythonic的 ...

  2. retrying模块的使用

    安装模块:pip3 install retrying 使用方式: 使用retrying模块提供的retry模块 通过装饰器的方式使用,让装饰器的函数反复的执行 retry可以传入参数stop_max_ ...

  3. retrying 模块

    我们在写爬虫的过程中,经常遇到爬取失败的情况,这个时候我们一般会通过 try 块去进行重试,但是每次都写那么一堆 try 块,真的是太麻烦了,所以今天就来说一个比较 pythonic 的模块,retr ...

  4. Pexpect模块的安装

    Pexpect模块的安装 下载地址:https://pypi.python.org/pypi/pexpect/ 解压后在目录下运行:python ./setup.py install (必须是root ...

  5. Python Beautiful Soup模块的安装

    以安装Beautifulsoup4为例: 1.到网站上下载:http://www.crummy.com/software/BeautifulSoup/bs4/download/ 2.解压文件到C:\P ...

  6. apache中若干模块的安装

    第一次手动安装apache,由于在./configure -prefix=/usr/local/apache2 -enable-module=so这样配置,导致后来不得不手动安装一些模块,遇到了一些坑 ...

  7. [LAMP]——mod_security和mod_evasive模块的安装

    系统版本:Red Hat 6 httpd版本:httpd-2.4.20 tar包:modsecurity-apache_2.5.9.tar.gz   mod_evasive_1.10.1.tar.gz ...

  8. Python 一些常用模块的安装

    (1)python PIL(image)模块的安装 sudo apt-get install python-imaging

  9. 搭建rtmp直播流服务之1:使用nginx搭建rtmp直播流服务器(nginx-rtmp模块的安装以及rtmp直播流配置)

    欢迎大家积极开心的加入讨论群 群号:371249677 (点击这里进群) 一.方案简要 首先通过对开发方案的仔细研究(实时监控.流媒体.直播流方案的数据源-->协议转换-->服务器--&g ...

随机推荐

  1. codeforces 631C C. Report

    C. Report time limit per test 2 seconds memory limit per test 256 megabytes input standard input out ...

  2. linux命令学习笔记(41):ps命令

    Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前 那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程 ...

  3. Debian for ARM

    /************************************************************************* * Debian for ARM * 说明: * ...

  4. Agc017_D Game on Tree

    传送门 题目大意 给定一棵树,$1$号节点为根,两个人轮流操作,每次选择一个根节点外的点,删掉它以及它的子树,不能操作者输,求两人均采用最优策略下先手胜利还是后手胜利. 题解 经典问题树上删边游戏,根 ...

  5. PLSQL查询最近编绎、创建、修改过的过程函数

    SELECT * FROM User_Objects t WHERE t.Object_Type IN ('PROCEDURE', 'PACKAGE BODY', 'FUNCTION') AND t. ...

  6. ACM学习历程—HDU 5072 Coprime(容斥原理)

    Description There are n people standing in a line. Each of them has a unique id number. Now the Ragn ...

  7. APIO2017 游记

    参加了APIO的同学肯定知道我为什么只写标题不写内容. QAQ

  8. ASP里面令人震撼地自定义Debug类(VBScript)

    不知道用ASP写代码的朋友是不是和我有一样的感受,ASP中最头疼的就是调试程序的时候不方便 我想可能很多朋友都会用这样的方法“response.write ”,然后输出相关的语句来看看是否正确.前几天 ...

  9. 洛谷【P1100】高低位交换

    二进制前置技能:https://www.cnblogs.com/AKMer/p/9698694.html 题目传送门:https://www.luogu.org/problemnew/show/P11 ...

  10. TextBlock截断字符显示为....

    添加: TextTrimming="CharacterEllipsis" 到TextBlock中, 即可让TextBlock 支持截断字符显示为...