python httplib/urllib获取文件名

Hap*_*ing 9 python urllib httplib

是否有可能获得文件名

e.g. xyz.com/blafoo/showall.html
Run Code Online (Sandbox Code Playgroud)

如果你使用urllib或httplib?

这样我可以将文件保存在服务器上的文件名下?

如果你去像这样的网站

xyz.com/blafoo/ 
Run Code Online (Sandbox Code Playgroud)

你看不到文件名.

谢谢

jfs*_*jfs 24

从响应http标头获取文件名:

import cgi

response = urllib2.urlopen(URL)
_, params = cgi.parse_header(response.headers.get('Content-Disposition', ''))
filename = params['filename']
Run Code Online (Sandbox Code Playgroud)

要从URL获取文件名:

import posixpath
import urlparse 

path = urlparse.urlsplit(URL).path
filename = posixpath.basename(path)
Run Code Online (Sandbox Code Playgroud)

  • @JorgeVargas:不。`posixpath` 是正确的模块。此外,在这里使用 `os.path` 是错误的。如果你不能弄清楚“为什么”,问,我会详细说明。 (2认同)