-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of https://github.com/multiprogramm/ListDownloader
- Loading branch information
Showing
1 changed file
with
103 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,109 @@ | ||
# ListDownloader | ||
**ListDownloader** — консольное приложение для выкачивания файлов по списку ссылок с переименованием скачанных файлов. Поддерживает следующие форматы списков для выкачивания: | ||
- m3u/m3u8 с именованием треков; | ||
<details><summary>Пример</summary> | ||
<p> | ||
|
||
**playlist.m3u:** | ||
``` | ||
#EXTM3U | ||
#EXTINF:-1,Чайковский - Симфония №4 | ||
https://example.com/123/456/789/1011.mp3 | ||
#EXTINF:-1,Smile.dk - Doki doki | ||
https://example.net/s/333/444/0bba235f.mp3 | ||
#EXTINF:-1,Марина Лаврова - За поворотом | ||
https://example.com/000/song.mp3 | ||
``` | ||
Файлы в папке **playlist** после вызова `ListDownloader.exe "playlist.m3u"`: | ||
``` | ||
Чайковский - Симфония №4.mp3 | ||
Smile.dk - Doki doki.mp3 | ||
Марина Лаврова - За поворотом.mp3 | ||
``` | ||
</p> | ||
</details> | ||
Консольное приложение для выкачивания файлов по списку ссылок с переименованием. Поддерживает следующие форматы списков для выкачивания: | ||
- m3u/m3u8 с именованием треков. Идеально подходит для выкачивания m3u-файла, который формирует браузерное расширение SaveFrom.Net, создавалось по большей части для этого сценария. | ||
- txt файл со ссылками, причём в качестве имени берётся первая непустая строка-нессылка, предшествующая ссылке. | ||
- txt файл с именами и ссылками: в качестве имени файла берётся первая непустая строка-нессылка, предшествующая ссылке. | ||
<details><summary>Пример</summary> | ||
<p> | ||
**links.txt:** | ||
``` | ||
Чайковский - Симфония №4 | ||
https://example.com/123/456/789/1011.mp3 | ||
Фотография Москвы | ||
https://example.com/00000/000001/00001.jpg | ||
ListDownloader_1.0.3 | ||
https://github.com/multiprogramm/ListDownloader/releases/download/1.0.3/ListDownloader.exe | ||
``` | ||
Файлы в папке **links** после вызова `ListDownloader.exe "links.txt"`: | ||
``` | ||
Чайковский - Симфония №4.mp3 | ||
Фотография Москвы.jpg | ||
ListDownloader_1.0.3.exe | ||
``` | ||
</p> | ||
</details> | ||
## Типичный сценарий использования: | ||
``` | ||
## Типичный сценарий использования | ||
```Batchfile | ||
ListDownloader.exe "playlist.m3u" | ||
``` | ||
## Подробная информация о параметрах: | ||
``` | ||
ListDownloader.exe /help | ||
Можно либо вызвать из командной строки, либо просто в проводнике открыть файл *playlist.m3u* с помощью программы **ListDownloader.exe**. Файлы будут скачиваться в папку, которая будет иметь такое же имя, как и файл списка, и будет находиться рядом с этим файлом. Т.е. в данном примере рядом с файлом *playlist.m3u* будет создана (если её нет) папка *playlist*, куда и будут сохраняться файлы. | ||
|
||
|
||
## Зачем создавалась программа | ||
Расширение браузера SaveFrom.Net нормально выкачивает одиночные треки, подставляя название в диалог «Сохранить как». Но вот с выкачиванием целого плейлиста есть небольшая проблема. После процесса скана ссылок можно получить m3u-плейлист, внутри которого есть и корректные имена треков, и ссылки на эти треки, но вот программы, которая выкачала бы композиции с корректными именами, сохранёнными в плейлисте, я не нашёл, поэтому и написал **ListDownloader**. | ||
|
||
|
||
## Информация о параметрах | ||
Полный вызов такой: | ||
```Batchfile | ||
ListDownloader.exe [Attributes] "PathToLinksFile" | ||
``` | ||
, где: | ||
- *PathToLinksFile* — путь к файлу, из которого нужно извлечь ссылки для скачки и соответствующие имена файлов. | ||
- *[Attributes]* — необязательные один или несколько параметров, которые можно задать: | ||
|
||
#### -threads *NUM* | ||
Количество одновременно качаемых файлов. | ||
|
||
По умолчанию: 2. | ||
|
||
|
||
|
||
#### -num | ||
У результирующих файлов в имени будет добавлен префикс-номер. | ||
|
||
По умолчанию: выключено. | ||
|
||
|
||
|
||
#### -encoding *ENCODING* | ||
Кодировка, в которой читаем файл-список. | ||
|
||
По умолчанию: **utf-8**. | ||
Возможные значения этого ключа можно посмотреть [вот тут](https://docs.microsoft.com/en-us/dotnet/api/system.text.encoding?view=netframework-4.5.2#list-of-encodings) в столбце «Name». И нужно, чтобы в столбце «.NET Framework support» стояла галочка, либо кодировка дополнительно поддерживалась ОС. | ||
|
||
|
||
#### -timeupd *NUM* | ||
Пауза в миллисекундах между обновлениями консоли. | ||
|
||
По умолчанию: 200. | ||
|
||
|
||
|
||
#### -dir "*PATH_TO_DIR*" | ||
Папка, в которую будут сохраняться файлы. | ||
|
||
По умолчанию: папка рядом с файлом со ссылками, с таким же именем. | ||
|
||
|
||
|
||
#### -help | ||
Показать справку по параметрам |