使用Python从直接URL下载视频

发布于 2021-01-29 15:20:37

我想用python下载视频。我尝试使用youtube-
dl,但不支持我要从中下载视频的网站。如何使用Python下载视频。首先,在点击此链接http://www.kmcgraphics.com/bits-
of-code/how-to-get-the-direct-url
之后,我试图从keepvid.com获得要下载的视频的直接链接。在YouTube上免费获取Flv视频文件的路径/。我得到以下链接http://www.animefun.com/dl/googDev.php?url=/108994262975881368074/Po270当我尝试运行以下代码时,出现错误。

import urllib
test=urllib.URLopener()
test.retrieve("http://www.animefun.com/dl/googDev.php?url=/108994262975881368074/Po270.flv","testout.flv")

错误:

Traceback (most recent call last):
File "downl.py", line 14, in <module>
test.retrieve("http://www.animefun.com/dl/googDev.php?url=/108994262975881368074/Po270.flv","testout.flv")
File "/usr/lib/python2.7/urllib.py", line 240, in retrieve
fp = self.open(url, data)
File "/usr/lib/python2.7/urllib.py", line 208, in open
return getattr(self, name)(url)
File "/usr/lib/python2.7/urllib.py", line 359, in open_http
return self.http_error(url, fp, errcode, errmsg, headers)
File "/usr/lib/python2.7/urllib.py", line 376, in http_error
return self.http_error_default(url, fp, errcode, errmsg, headers)
File "/usr/lib/python2.7/urllib.py", line 381, in http_error_default
raise IOError, ('http error', errcode, errmsg, headers)
IOError: ('http error', 301, 'Moved Permanently', <httplib.HTTPMessage instance at 0x7f094d5d5290>)

我是Python的新手。所以请帮帮我。

关注者
0
被浏览
162
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    urllib.URLopener 默认情况下不处理重定向

    请改用urllib.FancyURLopener

    import urllib
    test=urllib.FancyURLopener()
    test.retrieve("http://www.animefun.com/dl/googDev.php?url=/108994262975881368074/Po270.flv","testout.flv")
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看