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

如何用Python3获取URL文件大小?下面是一些示例代码和技巧帮助您获得准确的文件大小。

示例代码

1. 使用urllib库

import urllib.request

def get_file_size(url):
    headers = urllib.request.urlopen(url).headers
    if "Content-Length" in headers:
        return int(headers["Content-Length"])
    else:
        raise Exception("Can't determine file size.")

这段代码首先使用urllib.request打开URL,并访问响应的headers,这是一个Python字典。如果"Content-Length"存在于headers中,则说明服务器返回了文件大小,该值存储在Content-Length字段中并以字节为单位。 如果"Content-Length"不存在,则抛出异常。

2. 使用requests库

import requests

def get_file_size(url):
    resp = requests.head(url, allow_redirects=True)
    headers = resp.headers
    if "Content-Length" in headers:
        return int(headers["Content-Length"])
    else:
        raise Exception("Can't determine file size.")

这段代码使用requests库的head方法。它将发送HTTP HEAD请求并返回响应的headers。如果"Content-Length"存在于headers中,则说明服务器返回了文件大小,该值存储在Content-Length字段中并以字节为单位。 如果"Content-Length"不存在,则抛出异常。

总结

获取URL文件大小的代码很简单,你可以使用Python的urllib或requests库。 如果HTTP响应中包含Content-Length头,则可以使用该文件大小,否则代码将抛出异常。如果一直无法获取文件大小,则可能需要进一步跟踪与上述headers相关的信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python3获取url文件大小示例代码 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python encode()方法和decode()方法详解

    下面是“Python encode()方法和decode()方法详解”的完整攻略。 1. encode()方法详解 1.1 什么是encode()方法 在 Python 中,字符串也是一个对象。字符串对象具有许多方法,其中一个方法是encode(),该方法用于将字符串编码成指定的编码格式。encode()方法的语法如下: string.encode(enco…

    python 2023年5月31日
    00
  • Python基本数据结构之字典类型dict用法分析

    Python基本数据结构之字典类型dict用法分析 在Python中,字典类型(dict)是一种非常常见的数据类型。它可以存储键值对(key-value pairs),其中每个键(key)都是唯一的,对应的值(value)可以是任何数据类型。这里我们详细讲解字典类型(dict)的用法。 字典的创建 字典类型(dict)的创建非常简单,可以使用以下两种方式: …

    python 2023年5月13日
    00
  • Python基础中所出现的异常报错总结

    当我们在Python编程中,经常会遇到各种异常报错。以下是一些常见的Python异常报错及其解决方案: 1. SyntaxError Syntax通常是由于代码中语法错误引起的。解决方案是检查代码中的语法错误,并进行修正。 示例1:缺少冒号 # 错误示例 if x == 1 print("x is 1") # 正确示例 if x == 1…

    python 2023年5月13日
    00
  • python实现祝福弹窗效果

    下面是Python实现祝福弹窗效果的完整攻略,其中包含两条示例说明。 简介 祝福弹窗效果是一种现在比较流行的网站设计元素,它可以让网站的用户在访问网站时受到祝福和欢迎。下面我们将详细讲解如何使用Python实现祝福弹窗效果。 步骤 在需要添加祝福弹窗效果的页面上,导入必要的库文件。 # 导入需要使用的库文件 from tkinter import * imp…

    python 2023年6月13日
    00
  • 关于python列表相关知识点

    以下是关于Python列表相关知识点的完整攻略。 1. 列表的概述 在Python中,列表是一种常见的数据结构,用于一组有序的数据。列表中的每个元素可以是任意类型的数据,例如数字、字符串、布尔值等。列表是可变,可以动态地添加、删除和修改元素。下面介绍Python列表的相关知识点。 2. 列表的基本操作 2.1 创建列表 在Python中,可以使用方括号[]或…

    python 2023年5月13日
    00
  • Mac下python包管理工具pip的安装

    下面是在Mac下安装pip的完整攻略: 安装pip 第一步:下载get-pip.py文件 打开终端(Terminal)应用程序,运行以下命令在https://bootstrap.pypa.io/get-pip.py下载get-pip.py文件: curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py 第…

    python 2023年5月14日
    00
  • python办公自动化之excel的操作

    Python办公自动化之Excel的操作 Excel是办公中经常用到的一种表格处理工具,Python可以通过openpyxl库对Excel进行读写操作,实现Excel办公自动化,提高办公效率。下面是Excel读写操作的完整攻略。 1. 安装openpyxl库 首先需要安装openpyxl库,可以通过pip命令在命令行安装: pip install openp…

    python 2023年5月19日
    00
  • python被修饰的函数消失问题解决(基于wraps函数)

    Python被修饰的函数消失问题解决(基于wraps函数) 在Python中,我们经常会使用装饰器来增强函数的功能,但是使用装饰器可能会引发函数名称、文档字符串、参数列表等元信息丢失的问题。 例如,下面这个被装饰的函数丢失了元信息: def my_decorator(func): def wrapper(): """Wrappe…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部