Я використовую Firefox та плагін Video DownloadHelper для завантаження відео з YouTube тощо.
Як ці плагіни та веб-сайти автоматично отримують посилання для завантаження цих відео?
Я використовую Firefox та плагін Video DownloadHelper для завантаження відео з YouTube тощо.
Як ці плагіни та веб-сайти автоматично отримують посилання для завантаження цих відео?
Відповіді:
Існують як мінімум два способи досягти цього:
Програмне забезпечення перехоплює потоки завантаження та зберігає будь-які відео, які він виявляє (це найбільш вірогідний сценарій)
Програмне забезпечення просто копіює його з кешу веб-браузера (хоча це не неможливо, це набагато менш вірогідно з двох причин: 1., вимагає конкретних знань про всі підтримувані веб-браузери та, можливо, також певні відеопрогравачі; і 2., не всі відео зберігаються на диску в повному обсязі, оскільки це залежить від відеопрогравача)
Редагувати: Додано третю та четверту можливості ...
Програмне забезпечення запитує відео, створивши той самий запит на завантаження, що і плагін переглядача, а потім зберігає дані в міру їх отримання (це відрізняється від першої можливості, яку я перераховував вище, і може знадобитися деяка зворотна інженерія програвачі фільмів, написані у Flash або якийсь нюхаючий пакет, щоб визначити, як був побудований URI)
Програмне забезпечення замінює обробник за замовчуванням для відеоплеєрів (або він може замінити обробник Flash Player і діяти як тимчасовий обробник на веб-сайтах, які він розпізнає, таких як YouTube.com, Video.Google.com тощо), але для веб-сайтів та Flash Вміст анімації він спеціально не розпізнає, він просто передає роботу попередньому плагіну Flash Player, щоб створити більш "прозорий" ефект для користувача)
YouTube має унікальну URL-адресу для кожного відео. Деякі сайти пропонують онлайн-скрипт, який перетворює відео YouTube на MP4 або подібне розширення відеофайлу. Цей сценарій зазвичай завантажує відео на свій сервер FFMPEG, а потім перетворює його в MP4 або будь-який інший підтримуваний формат і дозволяє завантажувати це потокове відео.
Існує інструмент під назвою youtube-dl, який робить це шляхом вилучення всієї необхідної інформації про відеофайл та його місцезнаходження, а потім завантаження його (або через RTMPDump, або безпосередньо) відповідно до специфікації користувача (багато відео YouTube доступні у різних форматах ).
Джерело Python доступне і має працювати в Linux, Windows та Mac OS X (за умови встановлення інтерпретатора Python).
Я думаю, саме так працює більшість завантажувачів.