专栏首页明天依旧可好的专栏知识点讲解三:关于requests里的timeout()

知识点讲解三:关于requests里的timeout()

超时(timeout)

为防止服务器不能及时响应,大部分发至外部服务器的请求都应该带着 timeout 参数。在默认情况下,除非显式指定了 timeout 值,requests 是不会自动进行超时处理的。如果没有 timeout,你的代码可能会挂起若干分钟甚至更长时间。


连接超时指的是在你的客户端实现到远端机器端口的连接时(对应的是 connect() ),Request 会等待的秒数。一个很好的实践方法是把连接超时设为比 3 的倍数略大的一个数值,因为 TCP 数据包重传窗口 (TCP packet retransmission window) 的默认大小是 3。

在爬虫代理这一块我们经常会遇到请求超时的问题,代码就卡在哪里,不报错也没有requests请求的响应。

通常的处理是在requests.get()语句中加入timeout限制请求时间

req = requests.get(url, headers=headers, proxies=proxies, timeout=5)

如果发现设置timeout=5后长时间不响应问题依然存在,可以将timeout里的参数细化 作出如下修改后,问题就消失了

req = requests.get(url, headers=headers, proxies=proxies, timeout=(3,7))

如果在使用timeout过程中遇到ValueError错误提示(类似:ValueError: Timeout value connect was Timeout(connect=2.0, read=2.0, total=None), but it must be an int or float. ),这是python-requests version 2.4.3-4版本的一个bug需要我们更新一下requests

pip install -U requests

对于timeout=(3,7)中参数的具体含义我也不是很清楚,知道含义的童鞋可以留言哈

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python学习中的点点滴滴

    明天依旧可好
  • 遇到的那些报错

    1. zipfile.BadZipFile: File is not a zip file

    明天依旧可好
  • 利用百度的词法分析区分数据

    名人数据:介绍某位名人的一段(一句)话,例如:Raj Babbar,演员,主要作品有《迷宫下的罪恶2》、《天命玩家》、《Bodyguard》等。 非名人数据...

    明天依旧可好
  • 【盘点】十款助力大数据与分析技术的卓越工具

    导读:数据已经成为现代化企业中最为重要的宝贵资源。考虑到现有技术解决方案的复杂性与多样化,企业往往很难找到适合自己的大数据收集与分析工具。然而,混乱的时局之下已...

    钱塘数据
  • 十款卓越工具助力大数据与分析技术

    数据已经成为现代化企业中最为重要的宝贵资源。一切决策、策略或者方法都需要依托于对数据的分析方可实现。随着“大数据分析”逐步替代其上代版本,即“商务智能”,企业正...

    小莹莹
  • C++里大写TRUE和小写true区别

    DWORD类型表示“双字”,也就是四字节大小的整型值,在windef.h中,DWORD的定义如下:

    周俊辉
  • 让Python输出更漂亮:PrettyPrinter

    PrettyPrinter是Python 3.6 及以上版本中的一个功能强大、支持语法高亮、描述性的美化打印包。它使用了改进的Wadler-Leijen布局算法...

    一墨编程学习
  • C#Winform使用扩展方法自定义富文本框(RichTextBox)字体颜色

    在利用C#开发Winform应用程序的时候,我们有可能使用RichTextBox来实现实时显示应用程序日志的功能,日志又分为:一般消息,警告提示 和错误等类别。...

    Rector
  • 传统企业自己招人开发软件系统,会遇到哪些坑?

    企业自己招程序员开发系统的,不在少数,很多企业还寄希望于为自己企业做的软件系统,以后能卖给其他企业。但是往往效果不如人意,不仅没办法对外销售,内部应用也是苦不堪...

    人称T客
  • 记一次惊心的网站TCP队列问题排查经历

    此时问题已经影响到整个网站的正常业务,我的那个心惊的呀,最主要报警系统没有任何报警,服务运行一切正常,瞬时背上的汗已经出来了。但还是要静心,来仔细寻找蛛丝马迹,...

    顶级程序员

扫码关注云+社区

领取腾讯云代金券