python3获取url文件大小示例代码


Posted in Python onSeptember 18, 2019

在python3中,urllib2被替换为urllib.requeset,因此头文件中添加

import urllib.request as urllib2
def getRemoteFileSize(url, proxy=None):
 """ 通过content-length头获取远程文件大小
  url - 目标文件URL
  proxy - 代理 """
 opener = urllib2.build_opener()
 if proxy:
  if url.lower().startswith('https://'):
   opener.add_handler(urllib2.ProxyHandler({'https' : proxy}))
  else:
   opener.add_handler(urllib2.ProxyHandler({'http' : proxy}))
 try:
  request = urllib2.Request(url)
  request.get_method = lambda: 'HEAD'
  response = opener.open(request)
  response.read()
 except Exception:
  return 0
 else:
  print(response.headers)
  fileSize = dict(response.headers).get('content-length', 0)
  return int(fileSize)

使用上段代码发现输出为0,考虑应该是没查询到content-length字段,打印response.headers字段后,发现content-length字段应改为Content-Length,改后正常

python3获取url文件大小示例代码

def getRemoteFileSize(url, proxy=None):
 """ 通过content-length头获取远程文件大小
  url - 目标文件URL
  proxy - 代理 """
 opener = urllib2.build_opener()
 if proxy:
  if url.lower().startswith('https://'):
   opener.add_handler(urllib2.ProxyHandler({'https' : proxy}))
  else:
   opener.add_handler(urllib2.ProxyHandler({'http' : proxy}))
 try:
  request = urllib2.Request(url)
  request.get_method = lambda: 'HEAD'
  response = opener.open(request)
  response.read()
 except Exception:
  return 0
 else:
  print(response.headers)
  fileSize = dict(response.headers).get('Content-Length', 0)
  return int(fileSize)

总结

以上所述是小编给大家介绍的python3获取url文件大小示例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python删除指定目录下过期文件的2个脚本分享
Apr 10 Python
Python生成不重复随机值的方法
May 11 Python
python监控键盘输入实例代码
Feb 09 Python
python中不能连接超时的问题及解决方法
Jun 10 Python
Python使用matplotlib和pandas实现的画图操作【经典示例】
Jun 13 Python
python selenium 获取标签的属性值、内容、状态方法
Jun 22 Python
对python cv2批量灰度图片并保存的实例讲解
Nov 09 Python
python 获取页面表格数据存放到csv中的方法
Dec 26 Python
django重新生成数据库中的某张表方法
Aug 28 Python
python tkinter组件使用详解
Sep 16 Python
PyTorch加载自己的数据集实例详解
Mar 18 Python
Python3爬虫中Selenium的用法详解
Jul 10 Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
Sep 18 #Python
python3使用GUI统计代码量
Sep 18 #Python
django中的图片验证码功能
Sep 18 #Python
python tkinter图形界面代码统计工具
Sep 18 #Python
Python自动生成代码 使用tkinter图形化操作并生成代码框架
Sep 18 #Python
Python 元组操作总结
Sep 18 #Python
python sorted函数的小练习及解答
Sep 18 #Python
You might like
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
迁移PHP版本到PHP7
2015/02/06 PHP
PHP中把有符号整型转换为无符号整型方法
2015/05/27 PHP
PHP以json或xml格式返回请求数据的方法
2018/05/31 PHP
django中的ajax组件教程详解
2018/10/18 PHP
js 表单提交后按钮变灰的实例代码
2013/08/16 Javascript
jQuery实现列表自动循环滚动鼠标悬停时停止滚动
2013/09/06 Javascript
JavaScript将取代AppleScript?
2014/09/18 Javascript
JsRender实用入门教程
2014/10/31 Javascript
javascript封装 Cookie 应用接口
2015/08/07 Javascript
学习javascript的闭包,原型,和匿名函数之旅
2015/10/18 Javascript
微信小程序 wx:key详细介绍
2016/10/28 Javascript
vue实现pdf导出解决生成canvas模糊等问题(推荐)
2018/10/18 Javascript
angular4中引入echarts的方法示例
2019/01/29 Javascript
改变layer confirm弹窗按钮的颜色方法
2019/09/12 Javascript
Node.js实现简单管理系统
2019/09/23 Javascript
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
2018/11/18 Python
对Python中DataFrame选择某列值为XX的行实例详解
2019/01/29 Python
对IPython交互模式下的退出方法详解
2019/02/16 Python
使用Filter过滤python中的日志输出的实现方法
2019/07/17 Python
Python算法的时间复杂度和空间复杂度(实例解析)
2019/11/19 Python
python词云库wordcloud的使用方法与实例详解
2020/02/17 Python
浅析移动设备HTML5页面布局
2015/12/01 HTML / CSS
乐高瑞士官方商店:LEGO CH
2020/08/16 全球购物
大一期末自我鉴定
2013/12/13 职场文书
《老山界》教学反思
2014/04/08 职场文书
新闻发布会策划方案
2014/06/12 职场文书
预备党员自我批评思想汇报
2014/10/10 职场文书
2014年信用社工作总结
2014/11/25 职场文书
法制教育讲座心得体会
2016/01/14 职场文书
企业管理不到位检讨书
2019/06/27 职场文书
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
Java 超详细讲解数据结构中的堆的应用
2022/04/02 Java/Android
win11系统中dhcp服务异常什么意思? Win11 DHCP服务异常修复方法
2022/04/08 数码科技
Redis数据同步之redis shake的实现方法
2022/04/21 Redis
Hive日期格式转换方法总结
2022/06/25 数据库