Korzystam z przeglądarki Firefox i wtyczki Video DownloadHelper, aby pobierać filmy z YouTube itp.
W jaki sposób te wtyczki i witryny automatycznie uzyskują linki do pobierania tych filmów?
Korzystam z przeglądarki Firefox i wtyczki Video DownloadHelper, aby pobierać filmy z YouTube itp.
W jaki sposób te wtyczki i witryny automatycznie uzyskują linki do pobierania tych filmów?
Odpowiedzi:
Istnieją co najmniej dwa sposoby na osiągnięcie tego:
Oprogramowanie przechwytuje strumienie pobierania i zapisuje wszystkie wykryte filmy (jest to najbardziej prawdopodobny scenariusz)
Oprogramowanie po prostu kopiuje je z pamięci podręcznej przeglądarki internetowej (chociaż nie jest to niemożliwe, jest to znacznie mniej prawdopodobne z dwóch powodów: 1. wymaga konkretnej wiedzy o wszystkich obsługiwanych przeglądarkach internetowych i ewentualnie także niektórych odtwarzaczach wideo; oraz 2. nie wszystkich filmów są przechowywane na dysku w całości, ponieważ zależy to od odtwarzacza wideo)
Edycja: Dodano trzecią i czwartą możliwość ...
Oprogramowanie żąda wideo, wykonując to samo żądanie pobierania, co zrobiłoby wtyczka przeglądarki, a następnie zapisuje dane w momencie ich otrzymania (różni się to od pierwszej wymienionej powyżej możliwości i może wymagać pewnej inżynierii wstecznej odtwarzacze filmów napisane we Flashu lub wąchanie pakietów w celu ustalenia, w jaki sposób został skonstruowany identyfikator URI)
Oprogramowanie zastępuje domyślny moduł obsługi odtwarzaczy wideo (lub może zastąpić moduł obsługi odtwarzacza Flash Player i działać jako przejściowy moduł obsługi w rozpoznawanych witrynach, takich jak YouTube.com, Video.Google.com itp., Ale w przypadku witryn i Flash Animacja, której nie rozpoznaje, po prostu przekazuje ją do poprzedniej wtyczki Flash Player, aby stworzyć bardziej „przezroczysty” efekt dla użytkownika)
YouTube ma unikalny adres URL dla każdego filmu. Niektóre witryny oferują skrypt online, który konwertuje filmy z YouTube'a na MP4 lub podobne rozszerzenie pliku wideo. Ten skrypt zwykle pobiera wideo na ich serwer FFMPEG, a następnie konwertuje je do formatu MP4 lub innego obsługiwanego formatu i umożliwia pobranie wideo przesyłanego strumieniowo.
Istnieje narzędzie o nazwie youtube-dl, które robi to poprzez wyodrębnienie wszystkich niezbędnych informacji o pliku wideo i jego lokalizacji, a następnie pobranie go (przez RTMPDump lub bezpośrednio) zgodnie ze specyfikacją użytkownika (wiele filmów z YouTube jest dostępnych w wielu formatach ).
Źródło Python jest dostępne i powinno działać w systemach Linux, Windows i Mac OS X (pod warunkiem, że zainstalowany jest interpreter Python).
Myślę, że tak działa większość programów pobierających.