js blob类型url的视频下载问题的解决
blob下载问题的详细描述
我想用srcurlblob:https://www.youtube.com/23aea5c8-9ae2-40dc-9417-e675ea99b386下载视频,但是不知道应该怎么做。
有没有下载这类视频的通用方法?
推荐的解决方法
我在Vimeo中找到了一个使用bloburl下载视频的方法(读了这篇文章,我才知道做法)。我正在使用GoogleChrome,具体步骤如下:
1、打开MoreTools(更多工具)→DeveloperTools(开发工具)
2、检查视频标签中是否有这样的东西:
3、复制iframe标签的src(如果有的话)值,如http://player.vimeo.com/video/XYZ,如果你发现它可以复制,直接跳到第7点,否则按照步骤4,5,6继续操作。
4、现在在页面中找到这个字符串https://skyfire.vimeocdn.com/.../master.json?base64_init=1(使用开发视图(DeveloperView)),应该可以在javascript函数中找到它,像这样:
(function(e,a){vart={"cdn_url":"https://f.vimeocdn.com","view":1,"request":{"files":{"dash":{"origin":"gcs","url":"https://48skyfiregce-a.akamaihd.net/.../master.json?base64_init=1","cdn":"
5、复制上面的url字段中的链接到一个新的Chrome选项卡,例如https://48skyfiregce-a.akamaihd.net/.../master.json?base64_init=1,然后使用浏览器打开它,它会打开一个像这样的json文件:
{ "clip_id":XYZ, "base_url":"../", "video":[ {.........
6、现在用idXYZ组合构造一个URL,如下所示:https://player.vimeo.com/video/XYZ
7、用最终的URL替换视频标签内的blob:https://player.vimeo.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX(在上一步#6中创建的)。
8、现在可以发现,魔术般地,视频标签内的src字段已更改(如果没有,请尝试第7步多次)...
最后,使用新的链接直接下载它,就像这样:https://fpdl.vimeocdn.com/vimeo-prod-skyfire-std-us/XX/XXX/X/XXXXXXXX/XXXXXXXXX.mp4?token=abcdefg
其他的解决思路
这个答案是针对Twitter网址的-
右键点击视频,然后点击检查元素-
你会发现这样的代码
复制上面的代码,并粘贴到记事本++(Notepad++)中,然后用"替换所有的",用/替换所有和\/。(使用CTRL+H)
你会得到如下的内容
{ "is_360":false, "duration":28617, "scribe_widget_origin":true, "heartbeatEnabled":true, "video_url":"https://video.twimg.com/ext_tw_video/844504104512749568/pu/pl/e91Du5N2TZ09ZaW_.m3u8", "disable_embed":"0", "videoInfo":{ "title":null, "description":null, "publisher":{ "screen_name":"MountainButorac", "name":"MountainButorac", "profile_image_url":"https://pbs.twimg.com/profile_images/808318456701521920/vBvlAASx_normal.jpg" } }, "cardUrl":"https://t.co/SdSorop3uN", "content_type":"application/x-mpegURL", "owner_id":"14120461", "looping_enabled":true, "show_cookie_override_en":true, "visit_cta_url":null, "scribe_playlist_url":"https://twitter.com/MountainButorac/status/844505243538931714/video/1", "source_type":"consumer", "image_src":"https://pbs.twimg.com/ext_tw_video_thumb/844504104512749568/pu/img/FFt3qkbeOh0RlGfZ.jpg", "heartbeatIntervalInMs":5000.0, "use_tfw_live_heartbeat_event_category":true, "video_loading_timeout":45000.0, "status":{ "created_at":"WedMar2211:05:14+00002017", "id":844505243538931714, "id_str":"844505243538931714", "text":"TookmyGoddaughtertomeetthepope.Shestolehishat!https://t.co/SdSorop3uN", "truncated":false, "entities":{ "hashtags":[], "symbols":[], "user_mentions":[], "urls":[], "media":[{ "id":844504104512749568, "id_str":"844504104512749568", "indices":[57,80], "media_url":"http://pbs.twimg.com/ext_tw_video_thumb/844504104512749568/pu/img/FFt3qkbeOh0RlGfZ.jpg", "media_url_https":"https://pbs.twimg.com/ext_tw_video_thumb/844504104512749568/pu/img/FFt3qkbeOh0RlGfZ.jpg", "url":"https://t.co/SdSorop3uN", "display_url":"pic.twitter.com/SdSorop3uN", "expanded_url":"https://twitter.com/MountainButorac/status/844505243538931714/video/1", "type":"photo", "sizes":{ "small":{ "w":340, "h":604, "resize":"fit" }, "thumb":{ "w":150, "h":150, "resize":"crop" }, "large":{ "w":576, "h":1024, "resize":"fit" }, "medium":{ "w":576, "h":1024, "resize":"fit" } } }] }, "source":"\u003cahref=\"http://twitter.com/download/iphone\"rel=\"nofollow\"\u003eTwitterforiPhone\u003c/a\u003e", "in_reply_to_status_id":null, "in_reply_to_status_id_str":null, "in_reply_to_user_id":null, "in_reply_to_user_id_str":null, "in_reply_to_screen_name":null, "geo":null, "coordinates":null, "place":null, "contributors":null, "retweet_count":0, "favorite_count":0, "favorited":false, "retweeted":false, "possibly_sensitive":false, "lang":"en" }, "show_cookie_override_all":true, "video_session_enabled":false, "media_id":"844504104512749568", "view_counts":null, "statusTimestamp":{ "local":"4:05AM-22Mar2017" }, "media_type":1, "user":{ "screen_name":"MountainButorac", "name":"MountainButorac", "profile_image_url":"https://pbs.twimg.com/profile_images/808318456701521920/vBvlAASx_bigger.jpg" }, "watch_now_cta_url":null, "tweet_id":"844505243538931714" }
从上面的JSON格式,可以看到video_url的值
https://video.twimg.com/ext_tw_video/844504104512749568/pu/pl/e91Du5N2TZ09ZaW_.m3u8
这里的问题是,在2016年8月1日之后,Twitter不再使用.mp4视频,而是转换为新的HLS,自适应流格式,带有.m3u8文件扩展名。
.m3u8文件基本上只是一个文本文的封装,它们非常小(300-500字节)。当您使用文本编辑器打开它们时,它们包含指向不同视频大小的链接
在记事本++(Notepad++)中打开文件m3u8,它会包含这样的代码
EXTM3UEXT-X-INDEPENDENT-SEGMENTSEXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=256000,RESOLUTION=180x320,CODECS="mp4a.40.2,avc1.42001f"/ext_tw_video/844504104512749568/pu/pl/180x320/_Z42SY5zwMlLdFYx.m3u8EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=832000,RESOLUTION=360x640,CODECS="mp4a.40.2,avc1.42001f"/ext_tw_video/844504104512749568/pu/pl/360x640/-Phfjbbx2yinirLi.m3u8
根据您需要的分辨率从上面复制对应的链接。重复相同的步骤,直到有.ts文件。下载.ts文件(视频文件)。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。