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抓取网页内容示例分享
Feb 24 Python
在Python的struct模块中进行数据格式转换的方法
Jun 17 Python
python虚拟环境virtualenv的安装与使用
Sep 21 Python
OpenCV 边缘检测
Jul 10 Python
selenium+PhantomJS爬取豆瓣读书
Aug 26 Python
JupyterNotebook设置Python环境的方法步骤
Dec 03 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
Dec 12 Python
解决tensorflow打印tensor有省略号的问题
Feb 04 Python
Python接口开发实现步骤详解
Apr 26 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
May 18 Python
Python os和os.path模块详情
Apr 02 Python
python中 .npy文件的读写操作实例
Apr 14 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
使用PHP获取网络文件的实现代码
2010/01/01 PHP
PHP中ob_start函数的使用说明
2013/11/11 PHP
详解PHP序列化反序列化的方法
2015/10/27 PHP
php版微信自定义回复功能示例
2016/12/05 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
阿里云PHP SMS短信服务验证码发送方法
2017/07/11 PHP
js中的window.open返回object的错误的解决方法
2009/08/15 Javascript
JavaScript全局函数使用简单说明
2011/03/11 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
Angular.js如何从PHP读取后台数据
2016/03/24 Javascript
javascript运算符语法全面概述
2016/07/14 Javascript
jQuery实现的导航下拉菜单效果示例
2016/09/05 Javascript
jQuery验证表单格式的使用方法
2017/01/10 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
2018/01/30 Javascript
vue初尝试--项目结构(推荐)
2018/01/30 Javascript
基于vue v-for 循环复选框-默认勾选第一个的实现方法
2018/03/03 Javascript
微信小程序 如何获取网络状态
2019/07/26 Javascript
vue+koa2搭建mock数据环境的详细教程
2020/05/18 Javascript
零基础写python爬虫之urllib2使用指南
2014/11/05 Python
讲解Python的Scrapy爬虫框架使用代理进行采集的方法
2016/02/18 Python
python中安装模块包版本冲突问题的解决
2017/05/02 Python
Python有序字典简单实现方法示例
2017/09/28 Python
解决python测试opencv时imread导致的错误问题
2019/01/26 Python
Python 中的参数传递、返回值、浅拷贝、深拷贝
2019/06/25 Python
简单了解Python3 bytes和str类型的区别和联系
2019/12/19 Python
Python读取分割压缩TXT文本文件实例
2020/02/14 Python
如何把外网python虚拟环境迁移到内网
2020/05/18 Python
利用Python实现Excel的文件间的数据匹配功能
2020/06/16 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
2020/09/29 Python
美国马匹用品和马钉购物网站:State Line Tack
2018/08/05 全球购物
钳工实习自我鉴定
2013/09/19 职场文书
测绘工程本科生求职信
2013/10/10 职场文书
2014年入党积极分子党校培训心得体会
2014/07/08 职场文书
2015年社区环境卫生工作总结
2015/04/21 职场文书
独生子女证明范本
2015/06/19 职场文书
毕业欢送晚会主持词
2019/06/25 职场文书