urllib3报错问题解决方法

 时间:2024-10-12 01:41:46

1、原始代码如下:import urllib3def download(url,num_retries=2): print('Downloading:',url) try: html = urllib3.urlopen(url).read() except urllib3.URLError as e: print('Downloading error:',e.reason) html = None if num_retries > 0: if hasattr(e,'code') and 500<=e.code<600: #recursively retry 5xx HTTP errors return download(url,num_retries-1) return htmldownload('http://httpstat.us/500')(注释:这段代码在urllib2中使用是没有问题的,换成urllib3使用报错如下:)

urllib3报错问题解决方法

2、结果就报错了:AttributeError: module 'urllib3' has no attribute 'urlopen'AttributeError: module 'urllib3' has no attribute 'URLError'

urllib3报错问题解决方法

3、原因是:urllib3将所有的urllib都打包为urllib所以代码应修改为:urllib.request修改后的代码如下:import urllib.requestdef download(url,num_retries=2): print('Downloading:',url) try: html = urllib.request.urlopen(url).read() except urllib.request.URLError as e: print('Downloading error:',e.reason) html = None if num_retries > 0: if hasattr(e,'code') and 500<=e.code<600: #recursively retry 5xx HTTP errors return download(url,num_retries-1) return htmldownload('http://httpstat.us/500')

urllib3报错问题解决方法

4、运行结果如下:完美解决问题

urllib3报错问题解决方法

5、如果对你有用话给过投个票呗!!!

  • 塔防之绿野仙踪秘籍全攻略:[5]第五关
  • 阿波尼克号31关攻略
  • 保卫萝卜4第二章第4关攻略
  • 保卫萝卜4阿波尼克号18关攻略
  • 保卫萝卜4绿野奇缘24关攻略
  • 热门搜索
    两个毫不动摇是指什么 鸭肉不能与什么同食 皮卡丘是什么意思 985和211大学是什么意思 附子理中丸的作用 注册资本是什么意思 只争朝夕的意思 什么是违约责任 tail是什么意思英语 40不惑什么意思