php-app开发接口加密的示例分析
258
2022-08-26
Python爬虫之编写一个可复用的下载模块(python爬虫用到的模块)
看用python写网络爬虫第一课之编写可复用的下载模块的视频,发现和《用Python写网络爬虫》一书很像,写了点笔记:
1 #-*-coding:utf-8-*- 2 3 import urllib2 4 5 #下载时遇到的错误经常是临时性的,比如服务器过载时返回的 503 Service Unavailable错误。对于此类错误,我们可以尝试重新下载 6 8 def download(url, num_retries = 2): #默认重试次数为2次 9 print "Downloading:", url10 try:11 request = urllib2.Request(url)12 response = urllib2.urlopen(url)13 html = response.read()14 except urllib2.URLError as e:15 print "Download error:", e.reason #打印报错的原因16 html = None17 if num_retries > 0: 18 if hasattr(e, 'code') and 500 <= e.code < 600: #错误码500-600是服务器端错误19 return download(url, num_retries - 1) #当download函数遇到5xx错误码时,将会递归调用函数自身进行重试,此时重试次数-120 return html21 22 download(' #如果想改变重试此时,可以写成download('1) ,此时将会重试一次
运行结果:
我们也可以加一个print dir(e)来查看e中的内容,e中的确包含着code
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~