如何在web上获取文件的真实URL。(Python)

2024-10-01 17:31:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我注意到有时互联网上的音频文件有一个“假”网址。在

http://garagaeband.com/3252243

这将302指向真正的URL:

^{pr2}$

我的问题是…当提供假URL时,如何从头文件中获取真正的URL?在

目前,这是我用来读取文件头的代码。我不知道这些代码是否能让我实现我想要的目标。如何从响应头解析出“真正的”URL?在

import httplib
conn = httplib.HTTPConnection(head)
conn.request("HEAD",tail)
res = conn.getresponse()

这有一个302重定向: http://www.garageband.com/mp3cat/.UZCMYiqF7Kum/01_No_pierdas_la_fuente_del_gozo.mp3


Tags: 文件代码importcomhttpurl目标互联网
3条回答

您必须读取响应,意识到您得到了302(FOUND),并从响应头解析出真正的URL,然后使用新的URI获取资源。在

markpilgrim建议在“Dive Into Python3”中使用httplib2,因为它以更聪明的方式处理许多事情(包括重定向)。在

>>> import httplib2
>>> h = httplib2.Http()
>>> response, content = h.request("http://garagaeband.com/3252243")
>>> response["content-location"]
    "http://garageband.com/michael_jackson4.mp3"

使用urllib.getUrl()

编辑: 抱歉,我有段时间没做这件事了:

import urllib
urllib.urlopen(url).geturl()

例如:

^{pr2}$

相关问题 更多 >

    热门问题