Сначала хочу признаться, что я нуб в программировании на питоне. но все же каким-то образом мне удалось выяснить, как изменить некоторые регулярные выражения Python, поскольку экстрактор может получить для меня дополнительные данные. К сожалению, я не знаю, как собрать исполняемый файл из измененного исходного кода. потому что я использую оболочку PHP для использования исполняемого файла youtube-dl ubuntu для некоторых данных соскоб.
Я заметил, что об этом есть пост 6+ летней давности в
Перекомпилировать Python youtube-dl
но, к сожалению, решение не предоставило возможности перекомпилировать или перестроить. Я даже не нашел, как пересобрать в официальной документации для разработчиков здесь, в
https://github.com/ytdl-org/youtube-dl#developer-instructions
Most users do not need to build youtube-dl and can download the builds or get them from their distribution.
To run youtube-dl as a developer, you don't need to build anything either.
и в конце за вклад с открытым исходным кодом с использованием git
- Finally, create a pull request. We'll then review and merge it.
но не смог найти ничего, чтобы построить его локально для локального использования.
Как описано в инструкции по разработке, вы можете запускать youtube-dl в интерактивном режиме с помощью
python -m youtube_dl
в то время как репозиторий youtube-dl находится в вашем PYTHONPATH
, например, потому что ваш cwd является корнем репозитория youtube-dl.
Для разработки зачастую проще запустить тесты. Опять же, как задокументировано, любой из этих вариантов работает:
python -m unittest discover
python test/test_download.py
nosetests
Если вы разрабатываете экстрактор, вы можете запустить
python test/test_download.py TestDownload.test_YourExtractor
просто проверить ваш экстрактор.
Если вам действительно нужен двоичный файл youtube-dl, введите
make
в корневом каталоге репозитория youtube-dl. Вы получите двоичный файл с именем youtube-dl
.
Обратите внимание, что сделать работает с хорошо поддерживаемым программным проектом Любые, хотя некоторые хипстерские языки нового тысячелетия предпочитают заново изобретать свои собственные несовместимые версии.
если вы спешите и хотите протестировать изменения в файле youtube-dl, вы можете запустить его из исходного основного файла python.
src_path/youtube_dl/__main__.py
Я использую это для тестирования запуска youtube-dl
на Python3.8 вместо моей системы по умолчанию 2.7.12. Я просто меняю #!/usr/bin/env python
на #!/usr/bin/env python3.8
и добавляю программную ссылку на файл youtube_dl/__main__.py
в моей системе /usr/local/sbin/
, чтобы вы могли немедленно проверить свои изменения.