Làm cách nào để chúng tôi tải xuống video url blob [đã đóng]


217

Tôi muốn tải xuống một video có url không phải là tệp mp4 đơn giản, nhưng url của nó là loại blob chẳng hạn.

<video id="playerVideo" width="450px" autoplay="autoplay" height="338px" 
       style="height:100%;width:100%;" class="mejs-rai-e"
       src="blob:http://www.example.com/d70a74e1-0324-4b9f-bad4-84e3036ad354">
</video>

Có phần mở rộng hoặc phần mềm chrome nào có thể được sử dụng để tải xuống video đang phát không.


@cdlvcdlv Cảm ơn, anh bạn! Sau khi thử nghiệm rất nhiều công cụ, đó là công cụ phù hợp với trường hợp cụ thể của tôi!
felipeptcho 16/03/18

@felipeptcho Bạn rất hoan nghênh. Hạnh phúc khi thấy rằng bằng cách trả lời có thể giúp đỡ người khác.
cdlvcdlv 16/03/18

2
Xem tiện ích mở rộng VideoS HDS / HLS cho các trình duyệt dựa trên Chromium.
georgeawg

13
Tại sao mỗi câu trả lời duy nhất cho câu hỏi này giả sử phần mở rộng tập tin là .m3u8? Điều đó không bao giờ được chỉ định trong câu hỏi.
numbermaniac

Xin chào @SidD, bạn đã có thể giải quyết vấn đề này chưa? Nếu vậy, bạn có thể vui lòng cho tôi biết giải pháp nào hiệu quả với bạn không?
hagrawal

Câu trả lời:


228

Tôi vừa đưa ra một giải pháp chung, nên hoạt động trên hầu hết các trang web. Tuy nhiên, tôi đã thử điều này trên Chrome, nhưng phương pháp này sẽ hoạt động với bất kỳ trình duyệt nào khác, vì tất cả các công cụ Dev đều giống nhau.

Các bước:

  1. Mở Công cụ Dev của trình duyệt (thường là F12 hoặc Ctrl-Shift-I hoặc nhấp chuột phải và sau đó Kiểm tra trong menu bật lên) trên trang có video bạn quan tâm.
  2. Chuyển đến tab Mạng và sau đó tải lại trang. Tab sẽ được điền với một danh sách các yêu cầu (có thể lên tới hàng trăm trong số chúng hoặc thậm chí nhiều hơn).
  3. Tìm kiếm thông qua tên của các yêu cầu và tìm yêu cầu với .m3u8phần mở rộng. Có thể có nhiều người trong số họ, nhưng rất có thể người đầu tiên bạn tìm thấy là người bạn đang tìm kiếm. Nó có thể có bất kỳ tên, ví dụ playlist.m3u8.
  4. Mở yêu cầu và trong phần phụ Tiêu đề, bạn sẽ thấy URL đầy đủ của yêu cầu trong trường URL Yêu cầu . Sao chép nó. nhập mô tả hình ảnh ở đây
  5. Trích xuất video từ m3u8. Có nhiều cách để làm điều đó, tôi sẽ cung cấp cho bạn những người tôi đã thử, nhưng bạn có thể google thêm bằng cách "tải video từ m3u8".
    • Tùy chọn 1. Nếu bạn đã cài đặt trình phát VLC, hãy cung cấp URL tới VLC bằng tùy chọn menu " Open Network Stream ... ". Tôi sẽ không đi vào chi tiết về phần này ở đây, có một số hướng dẫn toàn diện ở nhiều nơi, ví dụ, ở đây . Nếu trang không hoạt động, bạn luôn có thể google một trang khác bằng cách "vlc tải video trực tuyến".
    • Tùy chọn 2. Nếu bạn quan tâm nhiều hơn đến dòng lệnh, hãy sử dụng FFMPEG hoặc tập lệnh của riêng bạn, như được hướng dẫn trong câu hỏi SuperUser này .

48
Tùy chọn 3 là: sử dụng URL danh sách phát trực tiếp với youtube-dl, rất đơn giản!
Arnaud Tournier

3
youtube-dl cũng hoạt động cho các tập tin mpd.
Gibado

2
@patricK Bạn có thể thử thêm người giới thiệu, ví dụ:youtube-dl --add-header Referer: https://www.google.com/referer-page https://google.com/video.m3u8
Searene

1
nếu tôi hỏi, làm thế nào bạn mở thanh tìm kiếm trong mô-đun mạng và tìm kiếm các từ khóa "m3u8".
Chu XF

1
Và Tùy chọn 4: sử dụng JDoader 2 để tải xuống URL danh sách phát, theo tôi đây là cách dễ nhất.
Robin Hartmann

50

Sử dụng tiện ích mở rộng Google Chrome của HLS Downloader để nhận liên kết đến danh sách phát M3U. Biểu tượng của nó trong thanh trình duyệt sẽ hiển thị số lượng danh sách phát được tìm thấy trên trang web hiện tại. Nhấp vào biểu tượng, sau đó bạn có thể thấy danh sách liên kết danh sách phát và sau đó sử dụng nút sao chép bên cạnh một liên kết để sao chép nó.

Sau đó sử dụng chương trình youtube-dl để tải tập tin.

youtube-dl --all-subs -f mp4 -o "file-name-to-save-as.mp4" "https://link-from-Google_Chrome-HLS_Downloader_extension"

Giải thích về các tùy chọn dòng lệnh:

  • -f mp4 = Định dạng đầu ra mp4

  • --all-subs = Tải xuống tất cả phụ đề

  • -o "file-name-to-save-as.mp4" = Tên của tệp để lưu video dưới dạng.

  • " https: // link-from-Google_Chrom-HLS_Doader_extension " = Đây là liên kết đến danh sách phát bạn đã sao chép từ tiện ích mở rộng Trình tải xuống HLS.

Nếu bạn sử dụng cùng một tùy chọn cấu hình mọi lúc cho youtube-dl, bạn có thể muốn xem các tùy chọn cấu hình cho youtube-dl , vì điều này có thể giúp bạn tiết kiệm rất nhiều thao tác gõ.

Tiện ích mở rộng HLS Downloader là mã nguồn mở và miễn phí theo giấy phép MIT nếu bạn muốn xem mã có thể được tìm thấy trên trang dự án của nó trên Github .


Điều này hoạt động thực sự độc đáo ngoại trừ trong trường hợp của tôi, MP4 không có âm thanh? Có cách nào để giải quyết điều này?
Christopher D. Emerson

2
Tôi đã không có sự kiện của anh ấy. Nó phải là một cái gì đó với tập tin bạn đang tải xuống. Tôi tin rằng chuẩn mp4 hỗ trợ nhiều rãnh âm thanh. Kiểm tra xem không có bản âm thanh nào khác và bản đầu tiên là phần im lặng.
frederickjh

1
Tuyệt vời! sau đó dễ dàng hơn nhiều khi thực hiện tất cả các hoạt động xung quanh mình với các tệp m3u8 và chỉ các tệp blob eo biển. Tuy nhiên tôi không cần bất cứ thứ gì trên youtube. Trình tải xuống HLS cung cấp cho tôi các tệp video trực tiếp.
Justin Emlay

thử thêm -x trong các tùy chọn
Sir Von Berker

Trong trường hợp của tôi, tôi đã dùng thử Trình tải xuống HLS với Twitter và nó hoạt động như @Justin nói: nó đã cho tệp video trực tiếp. Nhưng tôi cũng đã thử các đề xuất được đề xuất bởi @Vlad cho câu trả lời khác - về cơ bản thực hiện tất cả các bước theo cách thủ công - với kết quả tương tự (nghĩa là bắt đầu làm việc.MP4 tệp ).
Gwyneth Llewelyn

27

Quá trình có thể khác nhau tùy thuộc vào vị trí và cách thức video được lưu trữ. Biết rằng có thể giúp trả lời câu hỏi chi tiết hơn.

Làm ví dụ; đây là cách bạn có thể tải xuống video với các liên kết blob trên Vimeo.

  1. Xem mã nguồn của iframe trình phát video
  2. Tìm kiếm mp4
  3. Sao chép liên kết với truy vấn mã thông báo
  4. Tải xuống trước khi mã thông báo hết hạn

Nguồn & hướng dẫn từng bước ở đây.

nhập mô tả hình ảnh ở đây


2
Phương pháp này hoạt động tốt ngay cả khi kiểu tệp trong .mp4url không , chỉ cần kiểm tra tiêu đề của tệp và đổi tên nó.
eapo

25

Đây là cách tôi quản lý để "tải xuống" nó:

  1. Sử dụng phần tử kiểm tra để xác định URL của tệp danh sách phát M3U
  2. Tải xuống tệp M3U
  3. Sử dụng VLC để đọc tệp M3U, truyền phát và chuyển đổi video sang MP4

Trong Firefox, tệp M3U xuất hiện dưới dạng loại application / vnd.apple.mpegurl

nhập mô tả hình ảnh ở đây

Nội dung của tệp M3U sẽ như sau:

Mở trình phát trung gian VLC và sử dụng tùy chọn Media => Convert. Sử dụng tệp M3U (đã lưu) của bạn làm nguồn:

nhập mô tả hình ảnh ở đây


3
Mẹo tuyệt vời! Dường như không cần tải xuống m3u8tệp - bạn chỉ có thể dán url bên ngoài làm nguồn.

trên tab mạng có một tab phụ cho "Phương tiện". lấy tệp m3u8 dễ dàng hơn chỉ từ một vài mục.
pcarvalho

19

Có nhiều cách để lấy URL .m3u8bằng cách xem nguồn của trang, xem tab Mạng trong Công cụ dành cho nhà phát triển trong Chrome hoặc sử dụng plugin như Trình tải xuống video HDL / HLS .

Với URL .m3u8 trong tay, sau đó bạn có thể sử dụng ffmpegđể tải video xuống một tệp như vậy:

$ ffmpeg -i 'https://url/to/some/file.m3u8' -bsf:a aac_adtstoasc \
    -vcodec copy -c copy -crf 50 file.mp4

11

Nếu bạn KHÔNG thể tìm thấy .m3u8 tệp, bạn sẽ cần thực hiện một vài bước khác nhau.

1) Chuyển đến tab mạng và sắp xếp theo Media

Sắp xếp theo phương tiện

2) Bạn sẽ thấy một cái gì đó ở đây và chọn mục đầu tiên. Trong ví dụ của tôi, nó là mộtmpd tập tin. sau đó sao chép URL yêu cầu.

3) Tiếp theo, tải xuống tệp bằng công cụ dòng lệnh yêu thích của bạn bằng URL từ bước 2.

youtube-dl -f bestvideo+bestaudio https://url.com/destination/stream.mpd

4) Tùy thuộc vào mã hóa, bạn có thể phải nối các tệp âm thanh và video với nhau nhưng điều này sẽ phụ thuộc vào video theo trường hợp video.


10

Tôi đã đăng bài này ở một số trang web khác và tại sao không chia sẻ nó với kẻ / cô gái tại stackoverflow.

  1. Cài đặt tiện ích mở rộng Video DownloadHelper trên trình duyệt Firefox.
  2. Khi DownloadHelper được kích hoạt, hãy điều hướng đến trang web chứa video mà bạn muốn tải xuống.
  3. Khi video được phát trực tuyến, hãy nhấp vào biểu tượng DownloadHelper. Nó sẽ cung cấp cho bạn một danh sách tất cả các định dạng tệp có sẵn trên video hiện tại.
  4. Cuộn vào định dạng tệp mà bạn muốn tải xuống
  5. Ở phía bên tay phải, bạn sẽ thấy một mũi tên
  6. Nhấp vào mũi tên đó để có thêm thông tin về video hiện tại và định dạng đã chọn
  7. Từ cửa sổ hiển thị ở cuối mũi tên đó, cuộn xuống và chọn "Chi tiết"
  8. Bây giờ bạn có tất cả các chi tiết liên quan đến video hiện tại và định dạng đã chọn. Nó là một cái gì đó như thế này.

Hit hành động Details⊗ _needsAggregate _needsCoapp bitrate chunked mở rộng descrPrefix durationFloat frameId fromCache nhóm
chiều dài HLS id isPrivate masterManifest mediaManifest originalId giới thiệu danh hiệu tình trạng kích thước topUrl url urlFilename

  1. Bây giờ, hãy xem chi tiết cụ thể của người giới thiệu trong Chi tiết Lượt truy cập đó. Đó là url bạn muốn. Sao chép nó và dán vào trình tải xuống yêu thích của bạn.

9
  1. Tìm danh sách phát / bảng kê khai với tab mạng công cụ dành cho nhà phát triển. Luôn luôn có một, như đó là cách nó hoạt động. Nó có thể có phần mở rộng m3u8 mà bạn có thể nhập vào Bộ lọc.
  2. Đưa nó cho công cụ youtube-dl. Nó có thể tải xuống nhiều hơn là chỉ YouTube. Nó sẽ tự động tải xuống từng phân đoạn sau đó kết hợp mọi thứ với FFmpeg sau đó loại bỏ các phần. Có một cơ hội tốt nó hỗ trợ trang web bạn muốn tải xuống từ nguyên bản và thậm chí bạn không cần phải làm bước 1.
  3. Nếu bạn tìm thấy một trang web cứng đầu và bạn gặp phải 403 lỗi ... Telerik Fiddler sẽ giải cứu. Nó có thể bắt và lưu mọi thứ được truyền (như tệp video) vì nó hoạt động như một proxy cục bộ. Mọi thứ bạn thấy / nghe đều có thể được tải xuống, trừ khi đó là nội dung DRM như Spotify.

2
Làm thế nào bạn sẽ sử dụng youtube-dl để làm điều đó? chỉ youtube-dl https://....m3u8"?
Aziz Javed

Ngoài ra, điều này có làm việc cho video riêng tư?
Aziz Javed

@AzizJave aye, chính xác như thế. Tôi chưa thử nó trên các video riêng tư, nhưng nếu bạn có thể thấy trang đó ở đâu thì chúng hoạt động chính xác như trên một video công khai. Điều quan trọng là những gì bạn thấy trên trình duyệt: nếu bạn có thể nhìn thấy nó, bạn có thể sao chép nó. Đơn giản! 😉
Gwyneth Llewelyn

Các bạn có muốn một bài viết từ tôi về việc tải xuống các video HLS được mã hóa không? Về cơ bản, đây là bước 3 nhưng với ffmpeg để giải mã và kết hợp các phân đoạn ts.
Firsh - LetsWP.io

0

Nếu blob được khởi tạo với dữ liệu từ tệp kê khai F4M (kiểm tra Tab Mạng trong Công cụ dành cho nhà phát triển của Chrome), bạn có thể tải xuống tệp video bằng cách sử dụng tập lệnh php được đăng ở đây: https://n1njahacks.wordpress.com/2015/01/29 / how-to-save-hds-flash-stream-from-any-web-page /

Bằng cách đặt:

  if ($manifest == '')
    $manifest = $_GET['manifest'];

trước:

  if ($manifest)

bạn thậm chí có thể chạy nó trên máy chủ web, sử dụng các yêu cầu với chuỗi truy vấn: ?manifest=[manifest url] .

Lưu ý rằng có thể bạn sẽ muốn sử dụng ứng dụng khách FTP để truy xuất tệp video đã tải xuống và dọn sạch sau tập lệnh (nó để lại tất cả các phần video đã tải xuống).


-27

Bạn có thể chỉ cần nhấp chuột phải và lưu blob dưới dạng mp4.

Khi tôi đang chơi xung quanh với ghi video / âm thanh dựa trên trình duyệt, blob đầu ra có sẵn để tải xuống trực tiếp.


Tôi không nghĩ rằng điều đó là có thể. Bạn có thể chia sẻ trình duyệt nào bạn đang tải xuống không?
Cướp biển X

Tôi đã sử dụng chrome nhưng tôi đang đề cập đến một bản ghi video webrtc được thực hiện trên máy cục bộ. Đối với các đốm màu trên web, quy trình có thể khác.
pseudozach

1
điều này hoạt động cho các video thông thường nhưng không phải cho các đốm màu.
TankorSmash
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.