Инструмент для разделения .m3u плейлистов на отдельные файлы по часам.
Playlist Splitter - это Python-скрипт, который позволяет разделить большие .m3u плейлисты на отдельные файлы по часам. Это особенно полезно для радиостанций и подкастов, где контент организован по временным блокам.
Скрипт ищет файлы с расширением .m3u в указанной директории и для каждого файла создает поддиректорию, в которой размещает отдельные .m3u файлы для каждого часа, основываясь на заголовках в исходном файле.
- Простота использования - работает "из коробки" с минимальной настройкой
- Гибкость - поддерживает различные параметры командной строки
- Надежность - включает обработку ошибок и подробное логирование
- Кроссплатформенность - работает на Windows, macOS и Linux
# Клонирование репозитория
git clone https://github.com/keyreel/playlist-splitter.git
cd playlist-splitter
# Никаких дополнительных зависимостей не требуется!python playlist_by_hours.pyЭто найдет все .m3u файлы в текущей директории и создаст для каждого из них поддиректорию с разделенными по часам файлами.
python playlist_by_hours.py -d /путь/к/директории -o /путь/к/выходной/директории -v| Параметр | Описание |
|---|---|
-d, --directory |
Директория для поиска .m3u файлов (по умолчанию текущая) |
-o, --output |
Директория для сохранения результатов (по умолчанию создаются поддиректории в текущей) |
-v, --verbose |
Режим подробного вывода информации о процессе |
-h, --help |
Вывод справки по использованию |
Входные .m3u файлы должны содержать строки, начинающиеся с '##', которые используются для определения часа. Например:
## Час 01
#EXTINF:180,Исполнитель - Название трека
путь/к/файлу.mp3
#EXTINF:240,Другой исполнитель - Другой трек
путь/к/другому/файлу.mp3
## Час 02
#EXTINF:200,Третий исполнитель - Третий трек
путь/к/третьему/файлу.mp3
В этом примере будут созданы два файла: один для часа 01 и один для часа 02.
- Python 3.6 или выше
- Только стандартные библиотеки Python
Вклады приветствуются! Пожалуйста, не стесняйтесь создавать issues или pull requests.
- Форкните репозиторий
- Создайте ветку для вашей функции (
git checkout -b feature/amazing-feature) - Зафиксируйте ваши изменения (
git commit -m 'Add some amazing feature') - Отправьте изменения в ветку (
git push origin feature/amazing-feature) - Откройте Pull Request
Поддержка и обсуждение возможны в чате Радиоканала: https://t.me/RadioChannel_chat
Этот проект лицензирован под MIT License - см. файл LICENSE для деталей.
Кирилл М. - @keereel
Ссылка на проект: https://github.com/keyreel/playlist-splitter