Python - 从间接网址下载视频 [英] Python - download video from indirect url
问题描述
我有一个这样的链接
https://r9---sn-4g57knle.googlevideo.com/videoplayback?id=10bc30daeba89d81&itag=22&source=picasa&begin=0&requiressl=yes&mm=30&mn=SN-4g57knle&安培; MS = NXU&安培; MV = M&安培; NH = IgpwcjA0LmZyYTE2KgkxMjcuMC4wLjE&安培; PL = 19安培; SC = YES&安培; MIME =视频/MP4&安培; LMT = 1439597374686662&安培; MT = 1474140191&安培; IP = 84.56.35.53&安培; ipbits = 8&安培;到期=1474169270&sparams=ip,ipbits,expire,id,itag,source,requiressl,mm,mn,ms,mv,nh,pl,sc,mime,lmt&signature=6EF8ABF841EA789F5314FC52C3C3EA89273C3C3EA89278C5C3C3EA8927C3C3C3EA8927C3C3C3EA8978C5C3Ack3Ack3Ack3Ack3Ack3C5C3C3C3EA8978C5C5C3C3A897C8C3C3C3A8927C8C5C3C3A8927C8C5C3C3C32AE270C27070&sparams=1474169270&sparams=1474169270&sparams=ip、ipbits、expire、id、itag、来源、需要
这是一个临时生成的重定向(类似链接)这个链接:https://2.bp.blogspot.com/bO0q678cHRVZqTDCLb33qGUXve_X1CRTgHMVz9NUgA=m22"> (所以第一个链接将在几个小时内失效) 如何使用 Python 从 googlevideo 站点下载视频?由于 this 答案,我已经尝试过 youtube-dl,但它对我不起作用. 直接 URL 已经对我有很大帮助! 您可以使用 pycurl一个> 用法: I have a link like this which is a temporary generated redirect from (a link like) this link:
https://2.bp.blogspot.com/bO0q678cHRVZqTDclb33qGUXve_X1CRTgHMVz9NUgA=m22 (so the first link won't work in a couple of hours) How can I download the video from the googlevideo site with Python?
I already tried youtube-dl because of this answer, but it isn't working for me. The direct URL would already help me a lot! You can use pycurl Usage:
这篇关于Python - 从间接网址下载视频的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!#!/bin/usr/env python导入系统导入pycurlc = pycurl.Curl()c.setopt(c.FOLLOWLOCATION, 1)c.setopt(c.URL, sys.argv[1])with open(sys.argv[2], 'w') as f:c.setopt(c.WRITEFUNCTION, f.write)c.执行()
$ chmod +x a.py$ ./a.py "https://2.bp.blogspot.com/bO0q678cHRVZqTDclb33qGUXve_X1CRTgHMVz9NUgA=m22" output.mp4$文件输出.mp4output.mp4:ISO 媒体,MP4 v2 [ISO 14496-14]
https://r9---sn-4g57knle.googlevideo.com/videoplayback?id=10bc30daeba89d81&itag=22&source=picasa&begin=0&requiressl=yes&mm=30&mn=sn-4g57knle&ms=nxu&mv=m&nh=IgpwcjA0LmZyYTE2KgkxMjcuMC4wLjE&pl=19&sc=yes&mime=video/mp4&lmt=1439597374686662&mt=1474140191&ip=84.56.35.53&ipbits=8&expire=1474169270&sparams=ip,ipbits,expire,id,itag,source,requiressl,mm,mn,ms,mv,nh,pl,sc,mime,lmt&signature=6EF8ABF841EA789F5314FC52C3C3EA8698A587C9.9297433E91BB6CBCBAE29548978D35CDE30C19EC&key=ck2
#!/bin/usr/env python
import sys
import pycurl
c = pycurl.Curl()
c.setopt(c.FOLLOWLOCATION, 1)
c.setopt(c.URL, sys.argv[1])
with open(sys.argv[2], 'w') as f:
c.setopt(c.WRITEFUNCTION, f.write)
c.perform()
$ chmod +x a.py
$ ./a.py "https://2.bp.blogspot.com/bO0q678cHRVZqTDclb33qGUXve_X1CRTgHMVz9NUgA=m22" output.mp4
$ file output.mp4
output.mp4: ISO Media, MP4 v2 [ISO 14496-14]