Estoy tratando de descargar videos con src url blob:https%3A//www.youtube.com/23aea5c8-9ae2-40dc-9417-e675ea99b386
.
¿Hay algún proceso que pueda seguirse para descargar todo este tipo de videos?
Estoy tratando de descargar videos con src url blob:https%3A//www.youtube.com/23aea5c8-9ae2-40dc-9417-e675ea99b386
.
¿Hay algún proceso que pueda seguirse para descargar todo este tipo de videos?
Respuestas:
He encontrado una manera de descargar el video con blob url
en Vimeo
(leer aquí he entendido cómo hacerlo). Escribo los pasos simples aquí. Estoy usando Google Chrome:
More Tools
→Developer Tools
Compruebe si en la etiqueta del video hay algo como esto:
<video preload="" src="blob:https://player.vimeo.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"></video>
http://player.vimeo.com/video/XYZ
si lo encontrara, puede ir directamente al punto 7; de lo contrario, siga los pasos 4, 5, 6.Ahora busque esta cadena https://skyfire.vimeocdn.com/.../master.json?base64_init=1
dentro de la página (usando la Vista de desarrollador), debería encontrarla dentro de una función de JavaScript, como esta:
(function(e,a){var t={"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":"
Copie el enlace dentro del campo de URL en una nueva pestaña de Chrome, por ejemplo, https://48skyfiregce-a.akamaihd.net/.../master.json?base64_init=1
ábralo con un navegador, le abrirá un archivo json como este:
{
"clip_id": XYZ,
"base_url": "../",
"video": [
{ ... ... ...
Ahora redacte una url con su identificación de XYZ
esta manera:https://player.vimeo.com/video/XYZ
blob:https://player.vimeo.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
dentro de la etiqueta de video con esa última url (la creada en el paso anterior # 6).Ahora notará que, mágicamente, el campo src dentro de la etiqueta de video cambió (si no es así, intente el paso 7 varias veces) ...
<video preload="none" src="https://fpdl.vimeocdn.com/vimeo-prod-skyfire-std-us/XX/XXX/X/XXXXXXXX/XXXXXXXXX.mp4?token=abcdefg"></video>
Use ese nuevo enlace para descargarlo directamente, es algo como esto: https://fpdl.vimeocdn.com/vimeo-prod-skyfire-std-us/XX/XXX/X/XXXXXXXX/XXXXXXXXX.mp4?token=abcdefg
<video>
etiqueta en la estructura DOM de las herramientas de desarrollo y cambie el src
atributo de blob:...
a x
. No pasará nada, esto está bien. Ahora cámbielo nuevamente, a y
. Chrome lo convertirá 'mágicamente' a la URL como en el paso 8 o 9. :-)
Esta respuesta es para las URL de Twitter:
Encontrarás un código como este
<div id="playerContainer" class="player-container full-screen-enabled" data-config="{"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":"Mountain Butorac","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":"Wed Mar 22 11:05:14 +0000 2017","id":844505243538931714,"id_str":"844505243538931714","text":"Took my Goddaughter to meet the pope. She stole his hat! 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":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\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:05 AM - 22 Mar 2017"},"media_type":1,"user":{"screen_name":"MountainButorac","name":"Mountain Butorac","profile_image_url":"https:\/\/pbs.twimg.com\/profile_images\/808318456701521920\/vBvlAASx_bigger.jpg"},"watch_now_cta_url":null,"tweet_id":"844505243538931714"}" data-source-type="consumer">
2.Copie Pegar el código anterior en el bloc de notas ++. Reemplace todo "
con "
y con \/
wth /
en notepad ++. (Use CTRL + H)
Obtendrás algo como
{
"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": "Mountain Butorac",
"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": "Wed Mar 22 11:05:14 +0000 2017",
"id": 844505243538931714,
"id_str": "844505243538931714",
"text": "Took my Goddaughter to meet the pope. She stole his hat! 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": "\u003ca href=\"http://twitter.com/download/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\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:05 AM - 22 Mar 2017"
},
"media_type": 1,
"user": {
"screen_name": "MountainButorac",
"name": "Mountain Butorac",
"profile_image_url": "https://pbs.twimg.com/profile_images/808318456701521920/vBvlAASx_bigger.jpg"
},
"watch_now_cta_url": null,
"tweet_id": "844505243538931714"
}
Desde el formato JSON anterior, vea el valor video_url
https://video.twimg.com/ext_tw_video/844504104512749568/pu/pl/e91Du5N2TZ09ZaW_.m3u8
El problema aquí es que, después del 1 de agosto de 2016, Twitter ya no usa videos .mp4, sino que se convierte a un nuevo formato HLS, de transmisión adaptativa, con una extensión de archivo .m3u8 .
Los archivos .m3u8 son básicamente un contenedor de archivos de texto, son muy pequeños (300-500 bytes), y cuando los abre con un editor de texto, contienen enlaces a diferentes tamaños de video
EXTM3U EXT-X-SEGMENTOS INDEPENDIENTES EXT-X-STREAM-INF: ID DE PROGRAMA = 1, ANCHO DE BANDA = 256000, RESOLUCIÓN = 180x320, CÓDECS = "mp4a.40.2, avc1.42001f" / ext_tw_video / 844504104512749568 / pu / pl / 180x320 / _Z42SY5zwMlLdFYx.m3u8 EXT-X-STREAM-INF: PROGRAM-ID = 1, BANDWIDTH = 832000, RESOLUTION = 360x640, CODECS = "mp4a.40.2, avc1.42001f" / ext_tw_video / 8445041045127/5/360/68/68/360/360/360/360 Phfjbbx2yinirLi.m3u8
<div id="playerContainer"
id="playerContainer"
elemento, busque og:video:url
y abra la url en el contenido e inspeccione la fuente de eso.
document.querySelector('video').src
en la pestaña de la consola de herramientas del desarrollador de su navegador.
<video src="blob:https://www.example.tv/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx">
<source src="https://cdn.example.tv/api/media/tv/xyzxyz/index" type="application/x-mpegurl">
</video>
También tenía blob:
URL video/@src
, pero al mirar Developer tools
> Network
durante la reproducción resultó que video/source/@src
era URL para la m3u8
lista de reproducción.
Un m3u8
video respaldado se puede descargar fácilmente:
ffplay -i "https://cdn.example.tv/api/media/tv/xyzxyz/1080/index.m3u8"
ffmpeg -i "https://cdn.example.tv/api/media/tv/xyzxyz/1080/index.m3u8" -codec copy file.mkv
tl; dr - blob URL suena como el binario que desea obtener, pero puede haber una forma más fácil de obtener el video. Simplemente revise la pestaña Red en las herramientas de desarrollo mientras reproduce el video para ver lo que realmente está buscando.
-i <URL> -i <URL> -i <URL>
para combinar video, audio y subtítulos en una sola salida :)
m3u8
metalist (es decir, el archivo m3u8 que hace referencia a otros archivos m3u8) y ffmpeg lo descargará y combinará correctamente, por lo que no necesita especificar manualmente múltiples entradas -i
.
Encontré otra forma de descargar un video con blob url
in Vimeo
(vea la otra respuesta en esta página).
¡Esta solución es adecuada solo si desea solo el video sin los sonidos!
Entonces, si desea descargar solo un video de Vimeo (a menudo sin sonidos), puedo confirmar que esta extensión de Google Chrome funciona realmente bien: Flash Video Downloader .