gpt4 book ai didi

python - 如何从 header 中的 Content-Disposition 获取文件名

转载 作者:IT老高 更新时间:2023-10-28 22:22:05 25 4
gpt4 key购买 nike

我正在下载一个带有 Mechanize 的文件,并且在响应头中有一个字符串:

Content-Disposition: attachment; filename=myfilename.txt

是否有一种快速的标准方法来获取该文件名值?我现在想到的是:

filename = f[1]['Content-Disposition'].split('; ')[1].replace('filename=', '')

但它看起来像一个快速的'n'dirty解决方案。

最佳答案

首先使用mechanize获取header的值,然后使用内置cgi解析header模块。

演示:

>>> import mechanize
>>> browser = mechanize.Browser()
>>> response = browser.open('http://example.com/your/url')
>>> info = response.info()
>>> header = info.getheader('Content-Disposition')
>>> header
'attachment; filename=myfilename.txt'

然后可以解析标题值:

>>> import cgi               
>>> value, params = cgi.parse_header(header)
>>> value
'attachment'
>>> params
{'filename': 'myfilename.txt'}

params 是一个简单的字典,所以 params['filename'] 是你所需要的。文件名是否用引号括起来并不重要。

关于python - 如何从 header 中的 Content-Disposition 获取文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8035900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com