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 httplib模块使用实例
Apr 11 Python
Python正则表达式使用范例分享
Dec 04 Python
python+pillow绘制矩阵盖尔圆简单实例
Jan 16 Python
对pycharm代码整体左移和右移缩进快捷键的介绍
Jul 16 Python
详解django的serializer序列化model几种方法
Oct 16 Python
利用Python实现微信找房机器人实例教程
Mar 10 Python
详解python数据结构和算法
Apr 18 Python
PyCharm汉化安装及永久激活详细教程(靠谱)
Jan 16 Python
Django 自定义404 500等错误页面的实现
Mar 08 Python
Python爬虫获取页面所有URL链接过程详解
Jun 04 Python
Python字节单位转换(将字节转换为K M G T)
Mar 02 Python
Python中 range | np.arange | np.linspace三者的区别
Mar 22 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使用百度天气接口示例
2014/04/22 PHP
Linux php 中文乱码的快速解决方法
2016/05/13 PHP
PHP反射基础知识回顾
2020/09/10 PHP
javascript window.opener的用法分析
2010/04/07 Javascript
关于window.pageYOffset和document.documentElement.scrollTop
2011/04/05 Javascript
jQuery调用AJAX时Get和post公用的乱码解决方法实例说明
2013/06/04 Javascript
json字符串之间的相互转换示例代码
2014/08/21 Javascript
Vue.js实现简单ToDoList 前期准备(一)
2016/12/01 Javascript
通过npm引用的vue组件使用详解
2017/03/02 Javascript
Javascript(es2016) import和require用法和区别详解
2017/08/11 Javascript
js实现canvas保存图片为png格式并下载到本地的方法
2017/08/31 Javascript
使用命令行工具npm新创建一个vue项目的方法
2017/12/27 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
vue和webpack打包项目相对路径修改的方法
2018/06/15 Javascript
jQuery 同时获取多个标签的指定内容并储存为数组
2018/11/20 jQuery
python错误处理详解
2014/09/28 Python
redis数据库及与python交互用法简单示例
2019/11/01 Python
使用Python实现画一个中国地图
2019/11/23 Python
Pytest如何使用skip跳过执行测试
2020/08/13 Python
python读取excel数据并且画图的实现示例
2021/02/08 Python
丝芙兰新加坡官网:Sephora新加坡
2018/12/04 全球购物
东南亚冒险旅行与活动:Adventoro
2019/10/16 全球购物
网络工程师面试(三木通信技术有限公司)
2013/06/05 面试题
大学生创业计划书的范文
2014/01/07 职场文书
管理专员自荐信
2014/01/26 职场文书
西门豹教学反思
2014/02/04 职场文书
计算机毕业生自荐信范文
2014/03/23 职场文书
合作协议书怎么写
2014/04/18 职场文书
荷叶母亲教学反思
2014/04/30 职场文书
2014年党小组工作总结
2014/12/20 职场文书
欢迎词范文
2015/01/27 职场文书
《检阅》教学反思
2016/02/22 职场文书
2016年“9.22”世界无车日活动小结
2016/04/05 职场文书
用python批量解压带密码的压缩包
2021/05/31 Python
解决Jenkins集成SonarQube遇到的报错问题
2021/07/15 Java/Android
Oracle表空间与权限的深入讲解
2021/11/17 Oracle