Список форумов Kage Project Kage Project
 
  РегистрацияРегистрация  ВходВход
  Архив субтитровАрхив субтитров  ПоискПоиск  ЧаВоЧаВо  ПользователиПользователи
 Войти и проверить личные сообщенияВойти и проверить личные сообщения

PHP-скрипт загрузки аниме к сабам
На страницу 1, 2  След.
 
Начать новую тему   Ответить на тему    Список форумов Kage Project -> Техническая поддержка
Предыдущая тема :: Следующая тема 
Автор Сообщение
neko_kun



Зарегистрирован: 13.12.2007
Сообщения: 145
СообщениеДобавлено: Вс Мар 08, 2015 13:06 pm   Заголовок сообщения: PHP-скрипт загрузки аниме к сабам Ответить с цитатой

Я прекрасно понимаю, что для прочтения данного поста от читателя требуется понимание хотя бы азов веб-программирования,
но также я верю, что среди многочисленной аудитории нашего крупнейшего сообщества, на этом форуме найдутся и такие.

Данный PHP-скрипт предназначен для автоматизации поиска и загрузки аниме с сайта nyaa.se по имеющимся в папке субтитрам.

Алгоритм работы скрипта
1. Составляет список субтитров папки, из которой был вызван.
Код:
[HorribleSubs] ISUCA - 01 [1080p].ass
[HorribleSubs] ISUCA - 01 [1080p].mkv
[HorribleSubs] ISUCA - 02 [1080p].ass
[HorribleSubs] ISUCA - 02 [1080p].mkv
[HorribleSubs] ISUCA - 03 [1080p].ass
[HorribleSubs] ISUCA - 03 [1080p].mkv
[HorribleSubs] ISUCA - 04 [1080p].ass
[HorribleSubs] ISUCA - 05 [1080p].ass
[HorribleSubs] ISUCA - 06 [1080p].ass
[HorribleSubs] ISUCA - 07 [1080p].ass

2. Из этого списка исключает имена, если в папке имеются видео файлы с таким же именем (и для поиска отбрасывает расширение).
Код:
[HorribleSubs] ISUCA - 04 [1080p]
[HorribleSubs] ISUCA - 05 [1080p]
[HorribleSubs] ISUCA - 06 [1080p]
[HorribleSubs] ISUCA - 07 [1080p]

3. Ищет файла на сайте
Код:
http://www.nyaa.se/?page=search&cats=0_0&filter=0&term=%5BHorribleSubs%5D%20ISUCA%20-%2004%20%5B1080p%5D
...


4. Если находит ОДИН торрент, ставит его на закачку через торрент-клиент
5. Для файлов, для которых найден НЕ ОДИН торрент, выводит ссылки на поиск в HTML-файлик и потом открывает его в браузере.

После определенного времени привыкания, загрузки торентов через этот скрипт происходят практически мгновенно.
Пользоваться следующим образом:

1) создаем ярлык на BAT-файл, запускающий PHP-скрипт и передающий ему путь, из которого был вызван (есть во вложении)


2) переходим в папку аниме с субтитрами и перетаскиваем один из файлов (не важно, какой) на ярлык BAT-файла


3) наблюдаем, как в торрент-клиенте появляются новые загрузки

П.С. Прошу прощения за использования PHP под виндой.
На скринах фигурирует Total Commander, но можно обойтись и без него, а ярлык для запуска создать на панеле "быстрого запуска".
Отпишитесь, если поняли что я имел ввиду - буду рад критике, пожеланиям, предложением.

Дополнительную версию можно скачать с GitHub - ее ведет мой хороший знакомый, который не поленился помочь с исправлением багов и компиляцией в EXE


Последний раз редактировалось: Пн Июн 05, 2017 21:38 pm


[27.78 KB / Просмотров: 684] 1.png

[38.48 KB / Просмотров: 11965] 2.png

searchload.zip  [1.91 KB] [Загрузок: 81] Обновил 2017-06-05, в соответствии с работой нового треккера!
К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
ildari
Гость




СообщениеДобавлено: Вс Мар 08, 2015 16:09 pm   Ответить с цитатой

Интересно, как расшифровывается "vknkk-nytdl"?

К началу
neko_kun



Зарегистрирован: 13.12.2007
Сообщения: 145
СообщениеДобавлено: Вс Мар 08, 2015 16:54 pm   Ответить с цитатой

Я сейчас обсуждаю глюки и искренне рад, что Вас заинтересовало именно это.

vknkk - мой ник на ВК,
nytdl - NyaaTorrents Torrent Downloader

укоротил до 3 симфолов

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
Enzexanadu

Переводы



Зарегистрирован: 02.03.2015
Сообщения: 46
СообщениеДобавлено: Пн Мар 09, 2015 4:11 am   Ответить с цитатой

Интересно Smile

Вопрос первый. Людям нужно просто скачать серию. Зачем же держать раздачи в торрент-клиенте и грузить компьютер? На вашем месте я использовал бы клиент aria2c. Простенько и со вкусом. Функционала хватит за глаза.

Вопрос второй. Организация поиска на nyaa. Очень многие переводчики плевать хотели на то, чтобы называть субтитры в точности по имени видео. К тому же очень часто встречаются названия типа video_name.team_name.ass Как такое искать будете? И да, по точке нельзя отсеять всё, поскольку есть названия видео с точками (например Aldnoah.Zero)

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
neko_kun



Зарегистрирован: 13.12.2007
Сообщения: 145
СообщениеДобавлено: Пн Мар 09, 2015 13:34 pm   Ответить с цитатой

Enzeru:
aria2c
не знаю, что это, с 2007 года пользуюсь уторрентом, слышал о torrentstream, transmission, и еще каком-то CLI и даже что-то поднимал на OpenWRT...

Enzeru:
плевать хотели
плевать Я хотел на их переводы!!! Из-за таких оболтусов, пользователям, у которых не совпадает тайминг, приходится искать нужные равки или ставить aegisub и двигать полсерии на "10.200 сек. вперед" и потом на ".500 сек. назад", угадывая тайминг; что, в конечном итоге, приводит к поиску готовых аниме на рутрекере.
Они переводят не для зрителей, а для самообучения английскому (даже не японскому).

ПС. Можно брать имя видеофайла из субтитров, там есть заголовки, например:
Код:
Audio File: [HorribleSubs] Akatsuki no Yona - 16 [720p].mkv
Video File: [HorribleSubs] Akatsuki no Yona - 16 [720p].mkv
но, имхо, лучше работать с именами файлов: если у Вас субтитры к [720p], а Вы привыкли качать видео [1080p], то проще переименовать файлы групповым переименованием, чем править заголовки в каждом файле субтитров.

ППС. Для переименования файлов субтитров субтитры "обратно", написал такой скриптик ;)
Код:
<?php
define('SUBEXTS', 'ass|ssa|srt');
if (!empty($argv[1]) && ($dirname = dirname($argv[1])) && ($files = scandir($dirname)))
  foreach ($files as $fileName)
    if (preg_match('/\.(?:'.SUBEXTS.')$/', $fileName) && preg_match('/Video File\: ([^\r\n]+)/', file_get_contents($dirname.'/'.$fileName), $nameMatch))
      rename($dirname.'/'.$fileName, $dirname.'/'.substr($nameMatch[1], 0, strrpos($nameMatch[1], '.')).substr($fileName, strrpos($fileName, '.')));
запускается по такому же ярлыку Twisted Evil

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
smad
Гость




СообщениеДобавлено: Сб Мар 14, 2015 20:02 pm   Ответить с цитатой

Вобщем лучше юзать SoundSync - автоматический ретайминг сабов под другой релиз.

К началу
toph

Переводы



Зарегистрирован: 16.04.2008
Сообщения: 231
СообщениеДобавлено: Вс Мар 15, 2015 3:53 am   Ответить с цитатой

smad, а почему не sushi? К тому же его разработка не заброшена.

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист Посетить сайт автора
smad
Гость




СообщениеДобавлено: Вс Мар 15, 2015 4:04 am   Ответить с цитатой

cпс, просто не знал про эту прогу, надо будет сравнить)) Права я питон не знаю( не любитель интерпретаторов), наверно этот проект будет стимулом, чтоб выучить)

К началу
toph

Переводы



Зарегистрирован: 16.04.2008
Сообщения: 231
СообщениеДобавлено: Вс Мар 15, 2015 4:33 am   Ответить с цитатой

Для запуска проги не нужно знать питон))

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист Посетить сайт автора
smad
Гость




СообщениеДобавлено: Вс Мар 15, 2015 12:25 pm   Ответить с цитатой

Цитата:
You need to provide two audio files and a subtitle

Чучуть разочарован, то есть надо 2 равки скачивать, также из вики не увидел поддержку мп4 контейнера.
Да еще нужно ставить эту пачку (гит субмодулей не увидел, для удобного развертывания):
Цитата:
NumPy (1.8 or newer)
OpenCV 2.4.x (on Windows putting this file in the same folder as Sushi should be enough, assuming you use x86 Python)
FFmpeg (only if demuxing is used)
MkvExtract (optional for faster timecodes extraction when demuxing)
SCXvid-standalone (only if keyframes are made by Sushi)

наверно под линухой эту связку норм юзать, но под виндовс не вижу смысла.
Вобщем остался при своем мнение, drag&drop, любой контейнер, с 1 видеофайлом и субтитры удобнее.

Для тех кто выкладывает сабы, наверно суши удобнее, так как у них остались тв равки и есть бд сорсы, то через баш можно удобно пакетно подогнать, а для обычных зрителей не очень юзер френдли (исходя из перечня аргументов к скрипту)

К началу
toph

Переводы



Зарегистрирован: 16.04.2008
Сообщения: 231
СообщениеДобавлено: Вс Мар 15, 2015 12:39 pm   Ответить с цитатой

smad, смысл есть, если нужна покадровая точность, для этого два аудио как раз. Любой видеоконтейнер должен поддерживаться, просто надо будет указывать сабы отдельно, если они не встроенные. Numpy ставить не надо, оно с бинарником. Две стандартные утилитки для работы с видео - ffmpeg, mkvextract - ничего страшного из себя не представляют, весьма полезные штучки сами по себе. SCXvid не обязателен (только для привязки к кейфреймам, насколько помню), впрочем, скачать с гитхаба и кинуть в папку - дело минутное. Использую под виндой sushi без проблем. Кнопку настроить можно в том же тотале - будет типа гуи, хотя, конечно, не полноценный.

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист Посетить сайт автора
smad
Гость




СообщениеДобавлено: Вс Мар 15, 2015 12:47 pm   Ответить с цитатой

Я по отдельности пользовался этими утилитами.

Цитата:
smad, смысл есть, если нужна покадровая точность, для этого два аудио как раз.
Но что делать, если нету 2 видеофайлов, например, есть какое то аниме начала 2к (к примеру ноир) самих видео от solgers (стараая команда ансаберов) нет, есть тока двд рипы... и что делать?

SoundSync c финал фиксом тоже хорошо подгоняет. Конечно меланхолию Судзумии Харухи не подгонит (там больше 90 микро сдвигов в двд версии), а с обычным аниме справиться.

К началу
neko_kun



Зарегистрирован: 13.12.2007
Сообщения: 145
СообщениеДобавлено: Ср Янв 20, 2016 10:34 am   Ответить с цитатой

smad, спасибо за колоссальную работу над проектом
https://github.com/smad2005/NYTDL

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
smad
Гость




СообщениеДобавлено: Сб Янв 30, 2016 23:41 pm   Ответить с цитатой


Доступно в chocolatey (Chocolatey NuGet is a Machine Package Manager, somewhat like apt-get, but built with Windows in mind)

К началу
MIxa

Переводы



Зарегистрирован: 20.01.2005
Сообщения: 62
Откуда: Khabarovsk
СообщениеДобавлено: Вс Янв 31, 2016 3:50 am   Ответить с цитатой

Эх, блин... А ведь я помню светлые дни, когда люди писали тогда ещё программы для поиска и загрузки сабов к имеющемуся аниме... О времена! О нравы!

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист Посетить сайт автора Номер ICQ
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Kage Project -> Техническая поддержка Часовой пояс: GMT + 3
На страницу 1, 2  След.
Страница 1 из 2
 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы, прикрепленные к сообщениям