Python 网络教程大全之 05 如何获取url下载文件的大小?
2023-09-11 14:18:32 时间
实战需求
如何获取url下载文件名称?
解决方案
为了URL 中提取文件名,我们可以编写一个段程序来获取反斜杠 (/) 之后的最后一个字符串。
import requests
url = 'https://ai2opencode.com/favicon.ico'
if url.find('/'):
print url.rsplit('/', 1)[1]
这将在某些情况下正确给出文件名。但是,有时 url 中不存在文件名信息。例如,类似http://ai2opencode.com. 在这种情况下,Content-Disposition标题将包含文件名信息。这是获取它的方法。
import requests
import re
def get_filename_from_cd(cd):
"""
Get filename from content-disposition
"""
if not cd:
return None
fname = re.findall('filename=(.+)', cd)
if len(fname) == 0:
return None
return fname[0]
url = 'https://ai2opencode.com/favicon.ico'
r = requests.get(url, allow_redirects=True)
filename = get_filename_from_cd(r.headers.get('content-disposition'))
open(filename, 'wb').write(r.content)
相关文章
- Head First Python 学习笔记-Chapter3:文件读取和异常处理
- Python中如何将字典中key和value值进行互换操作呢
- Python文件下载、Http服务(3为http.server、2为SimpleHTTPServer)
- python中os.path.dirname(__file__)的使用(获取文件夹路径)(获取当前py文件绝对路径)
- 【华为OD机试真题 python】污染水域【2022 Q4 | 200分】
- python编程的基础知识,请问如何才能快速入门python
- 超全Python学习路线图+14张思维导图,让python初学者不走弯路
- 请问Python零基础学会可以做哪些?python是不是很难学?
- 【Python】【PyPI】twine模块打包python项目上传pypi
- 《Python Cookbook(第3版)中文版》——1.18 将名称映射到序列的元素中
- 《Python Cookbook(第3版)中文版》——6.7 用命名空间来解析XML文档
- python 文件读写编码
- 如何在 Python 中使用 Plotly 创建太阳系的 3D 模型 (教程含源码)
- python库 —— gym retro 的 ROMs文件下载地址
- Python实现下载文件的三种方法
- Python学习---网络文件上传
- python excel文件换题头
- Python文件逐行写入
- Selenium4 Python实现Page Factory设计模式,python新的定位方法