python下载数据(urllib,urllib2)

|| 我有这样的链接,直接指向mp3文件。因此,当我将其放在浏览器中时,基本上会问我是否要下载文件,但是当我通过以下代码对python执行相同操作时:
> data = urllib2.urlopen(\"http://www23.zippyshare.com/d/44123087/497548/Lil%20Wayne%20ft.%20Eminem%20-%20Drop%20The%20World.mp3\".read())
我将重定向到另一个这样的链接。因此,我得到的是html代码,而不是MP3数据。   \'http://www23.zippyshare.com/v/44123087/file.html \' 有任何想法吗 ? 谢谢     
已邀请:
        urllib2透明地处理重定向。您可能想查看服务器在呈现这样的重定向以及允许您下载时实际上在做什么。您可能希望对重定向处理程序进行子类化,并查看标头的哪个属性为您提供了url,然后使用urlretrieve进行下载。 设置cookie,明确尝试也可能是一个很好的尝试。
import cookielib, urllib2
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
opener.open(\'yourmp3filelink\')
    
        您的链接重定向到HTML网页,最有可能是因为您的下载请求超时。这些下载网站通常就是这样工作的:您永远不会获得静态的下载链接,而只有一个临时分配的链接。 我的猜测是无法使用该网站获得该静态链接。您必须知道该文件的实际来源。 因此,不,您的python代码没有错;只是您的来源。     

要回复问题请先登录注册