python爬虫快速响应服务器的做法
不论是打开网页或者爬取一些资料的时候,我们想要的是计算机能在最短的时间内运行出结果,不然等待的时间过长会影响下一步工作的计划。这时候我们可以给计算机一个指令,限制最久能等待的时间,在我们能接受的时间内运行出结果。那么这个指令方法是什么呢?接下来我们一起看看吧。
requests之所以称为“HTTP for human”,因为其封装层次很高,其中一处体现就在:requests会自动处理服务器响应的重定向。我在做搜狗微信公众号抓取的时候,搜狗搜索列表页面的公众号文章地址,其实不是微信的地址而需要请求到搜狗到服务器做重定向,而requests的默认处理则是将整个过程全部搞定,对此可以这样:
In [1]: r = requests.get('http://xlzd.me', allow_redirects=False)
allow_redirects参数为False则表示不会主动重定向。
另外,有时候对方网站的响应时间太长了,我们希望在指定时间内完事,或者直接停止这个请求,这时候的做法是:
In [1]: r = requests.get('http://xlzd.me', timeout=3)
timeout表示这次请求最长我最长只等待多少秒
拓展:
为requests套上一层代理的做法也非常简单:
import requests proxies = { "http": "http://192.168.31.1:3128", "https": "http://10.10.1.10:1080", } requests.get("http://xlzd.me", proxies=proxies)
到此这篇关于python爬虫快速响应服务器的做法的文章就介绍到这了,更多相关python爬虫中如何快速响应服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
python初学者,用python实现基本的学生管理系统(python3)代码实例
这篇文章主要介绍了用python实现学生管理系统,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-04-04unittest+coverage单元测试代码覆盖操作实例详解
这篇文章主要为大家详细介绍了unittest+coverage单元测试代码覆盖操作的实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2018-04-04
最新评论