Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
1

Улучшить скрипт запросов через youtube-dl

19.09.2018, 01:23. Показов 3038. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Windows Batch file
1
for %%a in (YouTubeID1 … IDn) do youtube-dl %%a -o options
ID, начинающиеся c -, надо указывать так:
-- "-l-61y9rs98" или
"http://www.youtube.com/watch?v=-l-61y9rs98". Это не позволяет использовать команды для множества. B отдельном скрипте для каждого ID
Код
youtube-dl -- "ID" -o options
не учитываются options.
He уверен, что можно спросить в Github. Ha всякий случай, Options in English (см. текст starting with a `-).
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.09.2018, 01:23
Ответы с готовыми решениями:

Как скачать весь плейлист с YouTube через youtube-dl?
Скачивать отдельные ролики с выбором качества у меня проблем нет. Но вот если хочется скачать весь...

Как узнать статистику запросов youtube
Столкнулся с такой проблемой. Надо узнать статистику запросов youtube. Есть ли какой-нибудь сервис...

Немного улучшить скрипт движка
Есть скрипт движка Сам движок: <?php /** * Простой движок на PHP * @author ox2.ru */...

Image Catalyst (улучшить скрипт проекта)
Добрый день! Я являюсь одним из разработчиков проекта Image Catalyst. Суть проекта -...

18
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
19.09.2018, 01:47 2
Цитата Сообщение от Masutin Посмотреть сообщение
"http://www.youtube.com/watch?v=-l-61y9rs98"
если это массив, почему нет
если часть массива, то:
..."http://www.youtube.com/watch?v=-l-61y9rs98" "http://www.youtube.com/watch?v=-l-71y9rs98"...

Добавлено через 4 минуты
Windows Batch file
1
2
3
@echo on
for %%a in ("a="b"" "b="c"" "c="d"") do echo %%~a
pause
Добавлено через 2 минуты
Windows Batch file
1
2
3
4
@echo on
setlocal enabledelayedexpansion
for %%a in ("a="b"" "b="c"" "c="d"") do set "s=%%~a"& echo !s:"=!
pause
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
20.09.2018, 23:15  [ТС] 3
1) Текст в кавычках должен бы приниматься, но в массиве youtube-dl его не видит.
2) Извините моё незнание, как применить Ваш скрипт к моему?
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
20.09.2018, 23:37 4
Цитата Сообщение от Masutin Посмотреть сообщение
к моему?
а ваш то где? и приведите массива кусок, как и чем он формируется.
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
22.09.2018, 00:35  [ТС] 5
Извините за введение в заблуждение! Массив - перечень полных адресов или только YouTube ID:
Windows Batch file
1
2
3
4
for %%a in (
Qzm6JXJw-sc
http://youtube.com/watch?v=cjBu1U6NgO4
) do youtube-dl %%a -o "%%(title)s.%%(ext)s"
ID c тире (-) в начале, надо указывать так:
-- "-l-61y9rs98" или
"http://youtube.com/watch?v=-l-61y9rs98". Это не позволяет использовать их в массиве. Скрипт для одного ID c возможностью учёта опций (после -o) возможен такой:
Windows Batch file
1
for /f "usebackq" %%a in ('"http://youtube.com/watch?v=-l-61y9rs98"') do youtube-dl %%a -o "%%(title)s.%%(ext)s"
Можно ли ID c тире в начале задать так, чтобы оно принималось в массиве?
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
22.09.2018, 03:23 6
Лучший ответ Сообщение было отмечено Masutin как решение

Решение

Masutin,
вы не хотите ни слушать ни на вопросы мои отвечать ...

например, список адресов в файле "spisok.txt"
Кликните здесь для просмотра всего текста

Код
http://youtube.com/watch?v=-l-61y9rs98
http://youtube.com/watch?v=-l-61y9rs32
http://youtube.com/watch?v=-2-61y9rs98


код "name.bat"
Windows Batch file
1
2
3
4
5
@echo off
set "sa=spisok.txt"
 
for /f "usebackq delims=" %%a in ("%sa%") do echo %%a
pause
в чем или какие проблемы в данном случае? Вы же так и не ответили как формируется список.
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
26.09.2018, 02:44  [ТС] 7
Cписок - обычные URL или ID, добавляются вручную. Решение co списком в файле помогло! Задачу c тем, чтобы учитывались options (текст после %a), решил, указав %a ПОСЛЕ options.
0
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
14.10.2018, 01:30  [ТС] 8
Возможно подобное усовершенствование?
Windows Batch file
1
2
set list=file file2
for /f "usebackq delims=" %%a in (%list%) do youtube-dl -o "d:\%list%\%%(title)s.%%(ext)s" -- "%%a"
file, file2 - названия файлов (любое слово). Как сделать, чтобы во втором случае (название папки) в %list% тоже попадало одно слово - file, затем file2?
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
14.10.2018, 14:12 9
по-русски и с примерами - ничего не понял что надо.
1
6228 / 2670 / 1051
Регистрация: 06.06.2017
Сообщений: 9,127
14.10.2018, 19:27 10
Masutin
Windows Batch file
1
2
set "list=file file2"
for %%a in (%list%) do youtube-dl -o "d:\%%a\%%(title)s.%%(ext)s" -- "%%a"
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
23.10.2018, 04:08  [ТС] 11
Попытаюсь пояснить. Пример: set list=Video Audio
Это файлы-перечни адресов. Задача: При обработке файла Video это же имя использовать для папки - Video. Далее для Audio.
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
23.10.2018, 13:02 12
как-то так:
Windows Batch file
1
2
3
4
5
@echo off
set "list=Audio.txt,Video.txt"
 
for %%l in (%list%) do for /f "usebackq delims=" %%a in ("%%l") do if exist "D:\%%~nl" youtube-dl -o "D:\%%~nl\%%(title)s.%%(ext)s" -- "%%a"
pause
файлы Audio.txt,Video.txt должны быть в папке с bat
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
03.09.2019, 13:25  [ТС] 13
Возможно ли задать удаление обработанных строк в файле или всего файла перечня после обработки всех строк?
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
03.09.2019, 16:31 14
Цитата Сообщение от Masutin Посмотреть сообщение
всего файла перечня
Windows Batch file
1
del "Audio.txt"
а вот
Цитата Сообщение от Masutin Посмотреть сообщение
после обработки всех строк
как это отследить? Что должно быть сигналом обработки строк или одной строки. Хотя может специально ввести в каждый файл строку-флаг? Например:
Audio.txt
Кликните здесь для просмотра всего текста

Код
aaa
bbb
ccc
del "Audio.txt"

Код для одного файла (для примера):
Прочитает все строки и удалит файл
Windows Batch file
1
2
3
4
5
6
7
8
@echo off
<Audio.txt (for /f "delims=" %%a in ('more') do @set "sdel=%%a"& call :# "%%a")
%sdel%
pause& exit
 
:#
 <nul set /p="%~1"|>nul find /v "del"&& echo %~1
exit /b
Добавлено через 17 минут
в целом как-то так:
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
@echo off
set "list=Audio.txt,Video.txt"
 
for %%l in (%list%) do for /f "usebackq delims=" %%a in ("%%l") do set "sdel=%%a"& call :# "D:\%%~nl" "%%a"
pause& exit
 
:#
 <nul set /p="%~2"|>nul find /v "del"&& (
   if exist "%~1" youtube-dl -o "%~1\%%(title)s.%%(ext)s" -- "%~2"
 )
 <nul set /p="%~2"|>nul find "del"&& %sdel%
exit /b
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
02.10.2019, 05:52  [ТС] 15
Конец обработки строки - наличие
Код
download] 100%
в выводе программы.
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
02.10.2019, 21:35 16
да собственно del "file..." на следующей строке после for и удалит файл именно после его полного прочтения, никаких флагов не нужно, это что-то я уже сам по навыдумывал.
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
09.11.2019, 22:13  [ТС] 17
1) K сожалению, работает без ошибок, но не удаляет строки. Если всё же осуществлять это, лучше удалять при наличии 'download] 100%'.
2) youtube-dl имеет свои переменные c % в имени. Можно задать их в set понятным для youtube-dl способом? He получилось. Иначе: чужие переменные (c % в имени) допустимы в переменных cmd?
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
09.11.2019, 23:56 18
Masutin, так, сами вы не хотите ничего ни искать ни делать, прочитали маленький кусок и вперед, так не пойдет, утилита с большим количеством ключей и возможностей и если сейчас в это углубляться мы уйдем далеко за рамки вопросов cmd. Вот ссылка на эту утилиту с полным ее рассмотрением во все глубину и там есть и bat файл и все что надо и не надо, на форуме нужно зарегистрироваться чтобы была возможность что-то оттуда скачивать.
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 520
19.11.2019, 01:53  [ТС] 19
Cпасибо за ссылку! He ожидал от 4PDA! Обычно ищу на forum.ru-board.com.
Вопрос 2 снят. Если будет досуг, взгляните на 1.
0
19.11.2019, 01:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.11.2019, 01:53
Помогаю со студенческими работами здесь

Улучшить скрипт для плагина под notepad++
Есть: Всем известная программа notepad++. Под неё существует плагин для юзерских...

Как улучшить этот скрипт перетаскивания объекта?
Написал скрипт, который перетаскивает объект. Но в 15 и 16 строчке JavaScript явно указано, какой...

Написал скрипт для регистрации пользователей, хочу его улучшить
1. Можно ли выполнять проверку введенных пользователей таким способом? Может быть использовать...

Доработать скрипт вывода видео с youtube
Парни, есть скрипт у меня http://www.testiki.ml/gen/ суть его в том, что мы вводим ключевое...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru