博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python爬虫requests判断请求超时并重新发送请求
阅读量:5138 次
发布时间:2019-06-13

本文共 709 字,大约阅读时间需要 2 分钟。

 下面是简单的一个重复请求过程,更高级更简单的请移步本博客: https://www.cnblogs.com/fanjp666888/p/9796943.html 

在爬虫的执行当中,总会遇到请求连接超时的情况,下面的代码块是在请求超时的情况下,捕捉超时错误并连续发送多次请求,只到请求连接成功。

NETWORK_STATUS = True # 判断状态变量
try:
    response = requests.post(url, headers=self.headers, data=data, timeout=5)
    if response.status_code == 200:
        return response
except requests.exceptions.Timeout:
    global NETWORK_STATUS
    NETWORK_STATUS = False # 请求超时改变状态

    if NETWORK_STATUS == False:

        '''请求超时'''
        for i in range(1, 10):
            print '请求超时,第%s次重复请求' % i
            response = requests.post(url, headers=self.headers, data=data, timeout=5)
            if response.status_code == 200:
                return response
return -1  # 当所有请求都失败,返回  -1  ,此时有极大的可能是网络问题或IP被封。

转载于:https://www.cnblogs.com/fanjp666888/p/8022282.html

你可能感兴趣的文章
HDU 6370(并查集)
查看>>
BZOJ 1207(dp)
查看>>
PE知识复习之PE的导入表
查看>>
HDU 2076 夹角有多大(题目已修改,注意读题)
查看>>
洛谷P3676 小清新数据结构题(动态点分治)
查看>>
九校联考-DL24凉心模拟Day2T1 锻造(forging)
查看>>
Cortex M3/M4 学习摘要(二)
查看>>
C#时间的味道——任时光匆匆我只在乎你
查看>>
(1)数据结构——线性表(数组)实现
查看>>
SpringMyBatis解析2-SqlSessionFactoryBean
查看>>
按照excel文档中的内容在当前cad图纸中自动排布实体
查看>>
Winform开发框架之图表报表在线设计器2-图表-SNF.EasyQuery项目--SNF快速开发平台3.3-Spring.Net.Framework...
查看>>
C#基础第八天-作业-设计类-面向对象方式实现两个帐户之间转账
查看>>
洛谷 P3237 [HNOI2014]米特运输
查看>>
Attributes.Add用途与用法
查看>>
JavaScript面向对象初探——封装和继承
查看>>
L2-001 紧急救援 (dijkstra+dfs回溯路径)
查看>>
【概率】poj 2096:Collecting Bugs
查看>>
javascript 无限分类
查看>>
【自制插件】MMD4Maya
查看>>