Come scaricare video con URL BLOB?


94

Sto cercando di scaricare video con URL URL blob:https%3A//www.youtube.com/23aea5c8-9ae2-40dc-9417-e675ea99b386.

Esiste un processo che può essere seguito per scaricare tutti questi tipi di video?


Se vuoi scaricare video di YouTube usa estensioni come Video Downloadhelper (Firefox)
Ganesh R.

voglio scaricare dall'URL di Vimeo.
Vinesh

Vinesh, prova a navigare sul sito Web di Vimeo e inizia a riprodurre il video che devi scaricare. Video DownloadHelper lo rileverà e ti darà la possibilità di scaricarlo. L'ho provato.
Ganesh R.

Senza fortuna. quando ho iniziato a riprodurre video, ho visto più suggerimenti video dall'estensione che hai citato ciascuno di circa 2 MB. quando ho scaricato una parte, non ero in grado di riprodurre quel piccolo file. Mi è stato riscontrato che il file è corrotto.
Vinesh

inserisci il link nei commenti
Ganesh R.

Risposte:


69

Ho trovato un modo per scaricare il video con blob urlin Vimeo(leggendo qui ho capito come farlo). Scrivo qui i semplici passaggi. Sto usando Google Chrome:

  1. Apri il More ToolsDeveloper Tools
  2. Controlla se nel tag video c'è qualcosa del genere:

    <video preload="" src="blob:https://player.vimeo.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"></video>
    
  3. Copia l'src del tag iframe, se presente, qualcosa come http://player.vimeo.com/video/XYZse lo avessi trovato puoi andare direttamente al punto 7, altrimenti segui i passaggi 4, 5, 6.
  4. Ora cerca questa stringa https://skyfire.vimeocdn.com/.../master.json?base64_init=1all'interno della pagina (usando la Vista sviluppatore), dovresti trovarla all'interno di una funzione javascript, come questa:

    (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":"
    
  5. Copia il link all'interno del campo url su una nuova scheda di Chrome, ad esempio https://48skyfiregce-a.akamaihd.net/.../master.json?base64_init=1finiscilo con un browser, ti aprirà un file json come questo:

    {
        "clip_id": XYZ,
        "base_url": "../",
        "video": [
                     { ... ... ...
    
  6. Ora componi un URL con il tuo ID in XYZquesto modo:https://player.vimeo.com/video/XYZ

  7. Sostituisci blob:https://player.vimeo.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXall'interno del tag video con l'ultimo URL (quello creato nel passaggio 6 precedente).
  8. Ora noterai che magicamente il campo src all'interno del tag video è cambiato (in caso contrario, prova il passaggio 7 più volte) ...

    <video preload="none" src="https://fpdl.vimeocdn.com/vimeo-prod-skyfire-std-us/XX/XXX/X/XXXXXXXX/XXXXXXXXX.mp4?token=abcdefg"></video>
    
  9. Usa quel nuovo link per scaricarlo direttamente, è qualcosa del genere: https://fpdl.vimeocdn.com/vimeo-prod-skyfire-std-us/XX/XXX/X/XXXXXXXX/XXXXXXXXX.mp4?token=abcdefg


7
Degno di nota. Come l'hai capito?
gronostaj,

1
Nel passaggio 7, cosa intendi con "l'ultimo URL all'interno dell'html"?
joaorodr84,

6
Funziona perfettamente, ma a volte il trucco è che devi sostituire il valore "src" più volte per ottenere il link di download generato.
Ashrith,

19
Attualmente, per Vimeo è molto più semplice e non richiede tutti i passaggi. Basta aprire un video Vimeo, trovare il <video>tag nella struttura DOM degli strumenti di sviluppo e modificare l' srcattributo da blob:...a x. Non succederà nulla, va bene. Ora cambia di nuovo, in y. Chrome lo convertirà 'magicamente' nell'URL come nel passaggio 8 o 9. :-)
StanE

3
@StanE funziona come un incantesimo, anche in Firefox, ed è decisamente più veloce ...
ling

10

Questa risposta è per gli URL di Twitter -

  1. Fare clic destro sul video e fare clic su Ispeziona elementi -

Troverai un codice come questo

<div id="playerContainer" class="player-container full-screen-enabled" data-config="{&quot;is_360&quot;:false,&quot;duration&quot;:28617,&quot;scribe_widget_origin&quot;:true,&quot;heartbeatEnabled&quot;:true,&quot;video_url&quot;:&quot;https:\/\/video.twimg.com\/ext_tw_video\/844504104512749568\/pu\/pl\/e91Du5N2TZ09ZaW_.m3u8&quot;,&quot;disable_embed&quot;:&quot;0&quot;,&quot;videoInfo&quot;:{&quot;title&quot;:null,&quot;description&quot;:null,&quot;publisher&quot;:{&quot;screen_name&quot;:&quot;MountainButorac&quot;,&quot;name&quot;:&quot;Mountain Butorac&quot;,&quot;profile_image_url&quot;:&quot;https:\/\/pbs.twimg.com\/profile_images\/808318456701521920\/vBvlAASx_normal.jpg&quot;}},&quot;cardUrl&quot;:&quot;https:\/\/t.co\/SdSorop3uN&quot;,&quot;content_type&quot;:&quot;application\/x-mpegURL&quot;,&quot;owner_id&quot;:&quot;14120461&quot;,&quot;looping_enabled&quot;:true,&quot;show_cookie_override_en&quot;:true,&quot;visit_cta_url&quot;:null,&quot;scribe_playlist_url&quot;:&quot;https:\/\/twitter.com\/MountainButorac\/status\/844505243538931714\/video\/1&quot;,&quot;source_type&quot;:&quot;consumer&quot;,&quot;image_src&quot;:&quot;https:\/\/pbs.twimg.com\/ext_tw_video_thumb\/844504104512749568\/pu\/img\/FFt3qkbeOh0RlGfZ.jpg&quot;,&quot;heartbeatIntervalInMs&quot;:5000.0,&quot;use_tfw_live_heartbeat_event_category&quot;:true,&quot;video_loading_timeout&quot;:45000.0,&quot;status&quot;:{&quot;created_at&quot;:&quot;Wed Mar 22 11:05:14 +0000 2017&quot;,&quot;id&quot;:844505243538931714,&quot;id_str&quot;:&quot;844505243538931714&quot;,&quot;text&quot;:&quot;Took my Goddaughter to meet the pope. She stole his hat! https:\/\/t.co\/SdSorop3uN&quot;,&quot;truncated&quot;:false,&quot;entities&quot;:{&quot;hashtags&quot;:[],&quot;symbols&quot;:[],&quot;user_mentions&quot;:[],&quot;urls&quot;:[],&quot;media&quot;:[{&quot;id&quot;:844504104512749568,&quot;id_str&quot;:&quot;844504104512749568&quot;,&quot;indices&quot;:[57,80],&quot;media_url&quot;:&quot;http:\/\/pbs.twimg.com\/ext_tw_video_thumb\/844504104512749568\/pu\/img\/FFt3qkbeOh0RlGfZ.jpg&quot;,&quot;media_url_https&quot;:&quot;https:\/\/pbs.twimg.com\/ext_tw_video_thumb\/844504104512749568\/pu\/img\/FFt3qkbeOh0RlGfZ.jpg&quot;,&quot;url&quot;:&quot;https:\/\/t.co\/SdSorop3uN&quot;,&quot;display_url&quot;:&quot;pic.twitter.com\/SdSorop3uN&quot;,&quot;expanded_url&quot;:&quot;https:\/\/twitter.com\/MountainButorac\/status\/844505243538931714\/video\/1&quot;,&quot;type&quot;:&quot;photo&quot;,&quot;sizes&quot;:{&quot;small&quot;:{&quot;w&quot;:340,&quot;h&quot;:604,&quot;resize&quot;:&quot;fit&quot;},&quot;thumb&quot;:{&quot;w&quot;:150,&quot;h&quot;:150,&quot;resize&quot;:&quot;crop&quot;},&quot;large&quot;:{&quot;w&quot;:576,&quot;h&quot;:1024,&quot;resize&quot;:&quot;fit&quot;},&quot;medium&quot;:{&quot;w&quot;:576,&quot;h&quot;:1024,&quot;resize&quot;:&quot;fit&quot;}}}]},&quot;source&quot;:&quot;\u003ca href=\&quot;http:\/\/twitter.com\/download\/iphone\&quot; rel=\&quot;nofollow\&quot;\u003eTwitter for iPhone\u003c\/a\u003e&quot;,&quot;in_reply_to_status_id&quot;:null,&quot;in_reply_to_status_id_str&quot;:null,&quot;in_reply_to_user_id&quot;:null,&quot;in_reply_to_user_id_str&quot;:null,&quot;in_reply_to_screen_name&quot;:null,&quot;geo&quot;:null,&quot;coordinates&quot;:null,&quot;place&quot;:null,&quot;contributors&quot;:null,&quot;retweet_count&quot;:0,&quot;favorite_count&quot;:0,&quot;favorited&quot;:false,&quot;retweeted&quot;:false,&quot;possibly_sensitive&quot;:false,&quot;lang&quot;:&quot;en&quot;},&quot;show_cookie_override_all&quot;:true,&quot;video_session_enabled&quot;:false,&quot;media_id&quot;:&quot;844504104512749568&quot;,&quot;view_counts&quot;:null,&quot;statusTimestamp&quot;:{&quot;local&quot;:&quot;4:05 AM - 22 Mar 2017&quot;},&quot;media_type&quot;:1,&quot;user&quot;:{&quot;screen_name&quot;:&quot;MountainButorac&quot;,&quot;name&quot;:&quot;Mountain Butorac&quot;,&quot;profile_image_url&quot;:&quot;https:\/\/pbs.twimg.com\/profile_images\/808318456701521920\/vBvlAASx_bigger.jpg&quot;},&quot;watch_now_cta_url&quot;:null,&quot;tweet_id&quot;:&quot;844505243538931714&quot;}" data-source-type="consumer">

2. Copia Copia sopra il codice in Notepad ++. Sostituisci tutto &quot;con "e con \/w /in notepad ++. (Usa CTRL + H)

Otterrai qualcosa di simile

{
    "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"
}

Dall'alto formato JSON, vedere il valore video_url

https://video.twimg.com/ext_tw_video/844504104512749568/pu/pl/e91Du5N2TZ09ZaW_.m3u8

Il problema qui è che, dopo il 1 ° agosto 2016, Twitter non utilizza più i video .mp4, ma la conversione in un nuovo formato HLS, streaming adattivo, con estensione .m3u8 .

I file .m3u8 sono fondamentalmente solo un wrapper di file di testo, sono super piccoli (300-500 byte) e quando li apri con un editor di testo, contengono collegamenti a dimensioni video diverse

  1. Apri il file m3u8 in notepad ++, conterrebbe codice come questo

EXTM3U EXT-X-INDEPENDENT-SEGMENTS EXT-X-STREAM-INF: PROGRAM-ID = 1, BANDWIDTH = 256000, RESOLUTION = 180x320, CODECS = "mp4a.40.2, avc1.42001f" / ext_tw_video / 844504104512749568 / pu / pl / 180x320 / _Z42SY5zwMlLdFYx.m3u8 EXT-X-STREAM-INF: PROGRAM-ID = 1, LARGHEZZA DI BANDA = 832000, RISOLUZIONE = 360x640, CODECS = "mp4a.40.2, avc1.42001f" / ext_tw4 / pu44 / 84450412/45445 Phfjbbx2yinirLi.m3u8

  1. Copia il rispettivo link dall'alto in base alle tue esigenze di risoluzione. Ripeti lo stesso passaggio fino ad avere il file .ts . Scarica il file .ts (il file video).

Cosa intendi con "otterrai qualcosa di simile" - da dove?
Utente

@Utente dal codice sopra di esso che inizia come<div id="playerContainer"
Pirata X

3
Ehi, al punto 4, cosa intendi con "copia il rispettivo link"? Non è un URL valido e non riesco a trovare il video con esso. EDIT: OK, giusto, l'ho trovato. Dovresti dire che devi mettere " video.twimg.com " prima di esso e accedere all'URL.
Elzo,

Se non riesci a trovare l' id="playerContainer"elemento cercare og:video:urle aprire l'URL nel contenuto e ispezionarne l'origine.
Guillefix,

Un altro modo per farlo su Twitter è eseguire document.querySelector('video').srcnella scheda della console degli strumenti di sviluppo del browser.
Farzad YZ,

8
<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>

Avevo anche l' blob:URL inserito video/@src, ma guardando Developer tools> Networkdurante la riproduzione si è scoperto che video/source/@srcera l'URL della m3u8playlist.

Un m3u8video supportato può essere facilmente scaricato da:

  • 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 sembra il file binario che si desidera ottenere ma potrebbe esserci un modo più semplice per ottenere il video. Controlla la scheda Rete negli strumenti Dev mentre riproduci il video per vedere cosa stai effettivamente recuperando.


1
Funziona sulla mia macchina! E puoi fornire più tipi di input stream -i <URL> -i <URL> -i <URL>per unire video, audio e sottotitoli in un unico output :)
mcandre

@mcandre Sì, è un buon consiglio. Puoi anche trovare m3u8 metalist (cioè file m3u8 che fa riferimento ad altri file m3u8) e ffmpeg lo scaricherà e lo unirà correttamente, quindi non è necessario specificare manualmente più input -i.
Vlastimil Ovčáčík,

0

Ho trovato un altro modo per scaricare un video con blob urlin Vimeo(vedi l' altra risposta in questa pagina).

Questa soluzione è adatta solo se vuoi solo il video senza i suoni!

Quindi, se vuoi scaricare solo un video Vimeo (spesso senza audio), posso confermare che questa estensione di Google Chrome funziona davvero bene: Flash Video Downloader .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.