Форум by ArjLover

Форум by ArjLover (http://forum.arjlover.net/index.php)
-   Приёмная ArjLover-a (http://forum.arjlover.net/forumdisplay.php?f=3)
-   -   Полезная программка (http://forum.arjlover.net/showthread.php?t=5104)

Digrol 27.03.2008 01:55

Полезная программка
 
Сделал себе программку, может ещё кому-то пригодится.

Скачав некоторое количество мультиков и поддерживая их раздачу с помощью торрентов, я столкнулся с проблемой - нельзя переименовать скачанные мультики... потому что нужно будет и каждый торрент перезапустить с указанием файла, а их уже тыща штук. А если я их перенесу на другой диск или в другую папку? Как найти нужный мне мультик? Файлы ведь названы транслитом =( А описание к мультику?

Не долго думая, я сделал вот что:
1. Решил оставить имена файлов, как они названы в архиве.
2. Написал маленькую программку, которая немного изменяет список мультиков со страницы http://multiki.arjlover.net/multiki/ и позволяет с помощью него смотреть уже скачанные мультики.
Сразу скажу, пока только для мультиков делал, фильмы и фильмики - там всё также почти, надо будет - доделаю и под них.


-------------------------------------------------------------
Опишу пример использования программки.

1. Допустим я пришёл на сайт архива только что и у меня нет мультиков. Я открываю список мультиков и вижу такую картину:
http://i033.radikal.ru/0803/70/f7834296a09dt.jpg

2. Далее я решил себе скачать 3 мультика: "13 рейс", "32 декабря", "38 попугаев. Бабушка удава", выкачиваю их с помощью, например, торрента или ослика, и кладу в каталог "Multiki" на диске D.

3. Теперь в Internet Explorer сохраняю в ту же папку страничку со списком мультиков, т.е. делаю так: меню "Файл", пункт "Сохранить как...", в окошке выбираю папку где лежат мультики (диск D, Multiki), внимание, в этом же окошке выбираю тип файла - "Веб-страница, только HTML (*.htm;*.html)", имя не меняю. Сохранить.
Вот визуально:
http://i018.radikal.ru/0803/5a/0675d0aca35bt.jpg

4. Теперь копирую в каталог с мультиками (у нас в примере это диск D, папка Multiki) свою программку - remake_index.exe (57 кб).

5. Запускаю "remake_index".
Программа анализирует файл "Список мультфильмов on-line" и все мультики, которые лежат в текущей папке, в результате получается файл - "index".

6. Открываю файл "index" двойным кликом и вижу следующую картину:
http://i047.radikal.ru/0803/f6/33e9935180d2t.jpg

7. Теперь если я хочу посмотреть ранее скачанный мультик, тыкаю в "Смотреть" и открывается нужный файл:
http://i022.radikal.ru/0803/52/144b81591c35t.jpg

8. Остальные ссылки не меняются, т.е. если нужно посмотреть информацию о мультике - тыцкаем в название мультика, нужно скачать - тыцкаем в ссылку на скачку нужного файла.

9. Внимание. Если вы перешли на страничку с информацией о мультике, то обратно к этому списку можно вернуться только с помощью кнопки назад на панели инструментов:
http://i023.radikal.ru/0803/04/2298e248f514t.jpg
или нажав сочетание клавиш - Alt + "стрелочка влево".

А если кликните, например, на ссылку "Вернуться к списку мультфильмов":
http://i036.radikal.ru/0803/7b/c60e6e106b41t.jpg
то и попадёте соответственно на страничку с тем списком, который лежит на сервере, а не на вашем компьютере.

10. Если вы скачали ещё мультиков, просто запустите ещё раз программку "remake_index" и она обновит файл "index" (пункты 5-7). Если обновился список мультиков на сервере, то повторяем пункты 3-7.

---------------------------------------------------
Надеюсь, понятно объяснил что это такое, зачем нужно и как пользоваться. Усилия прикладываются минимальные, а результат меня, к примеру, устроил. Всё ж лучше, чем файлы переименовывать, или торренты тыкать в нужные файлы и вести при это свой список мультов в каком-нибудь каталогизаторе. =)
Жду отзывов и комментариев.

PS. Программку для переименовывания файлов из транслита в русские названия и обратно (на основе списков архива) я уже тоже сделал, только смысла в этом не много, если кому надо - выложу =)

Turtle 27.03.2008 02:33

Digrol, очень хорошо!

Замечание есть — Internet Explorer вполне может провалить всё дело, надо проверять стандартным (W3C) браузером, например Firefox.

А в общем, я бы предложил путь проще и логичнее — файлы не переименовывать вообще, а сделать программу, которая бы на основе индекса создавала в указанном месте папку с именнованными по-русски ярлыками Windows, в идеале и Mac OS.

Ну и вторую программу — для тех, кто поторопился переименовать файлы — которая на основе MD5-индекса восстановила бы их оригинальные имена.

Digrol 27.03.2008 06:25

Цитата:

Сообщение от Turtle (Сообщение 38893)
Замечание есть — Internet Explorer вполне может провалить всё дело, надо проверять стандартным (W3C) браузером, например Firefox.

Я проверял именно на Internet Explorer - как наиболее распространённом браузере под Windows. В Opera файл такой же получается. Даже если пользуешься обычно другим браузером, можно сохранить страничку в Эксплорере, а открывать потом в своём браузере.
Цитата:

А в общем, я бы предложил путь проще и логичнее — файлы не переименовывать вообще, а сделать программу, которая бы на основе индекса создавала в указанном месте папку с именнованными по-русски ярлыками Windows, в идеале и Mac OS.
Так я же и говорю о том, чтобы не переименовывать файлы. Я просто делаю локальный индекс-файл.
Переименовывание мне, к примеру, пригодится для сверки коллекций, т.к. моя текущая коллекция названа русскими именами (по имени мультика).
А зачем ярлыки? Какое преимущество перед приведённым мной списком?
Ярлык - это +ещё один файл на каждый контент-файл.
И ярлык - это только запуск файла, а как найти описание?
А как узнать, какой из мультов скачан, а какой нет? Как скачать недостающий файл?
Цитата:

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

Turtle 27.03.2008 06:37

Цитата:

Сообщение от Digrol (Сообщение 38895)
А зачем ярлыки? Какое преимущество перед приведённым мной списком?
Ярлык - это +ещё один файл на каждый контент-файл.
И ярлык - это только запуск файла, а как найти описание?
А как узнать, какой из мультов скачан, а какой нет? Как скачать недостающий файл?

Я имею ввиду дополнить программу ещё и функцией создания ярлыков. Обычно на рабочем столе лежит папка с ярлыками, а сами файлы на другом диске. Например, я так делаю не особо разбирающимся в технике людям, чтобы случайно не потёрли, и у ярлыка может быть любое имя, расширение *.AVI не маячит.
Цитата:

Сообщение от Digrol (Сообщение 38895)
понадобится один файл, содержащий все имена мульт-файлов и их md5-суммы. Я пока такого не видел.

Ай-яй-яй, это же в правилах... ;)

http://multiki.arjlover.net/faq.html#MD

RUSpectrum 27.03.2008 13:32

Эххх... ну я же в своё время говорил, что необходим XML-список мультфильмов (на сервере ArjLover).
XML-файл - это база данных по всем фильмам и мультфильмам.

Если есть такой XML-файл, то прикрутить остальные мега-супер-навороты ( :D ) - дело 15-и минут.

Turtle 27.03.2008 13:44

База сейчас и так почти уже есть, но обыкновенная. :)

А от главных страниц по-прежнему требуется как можно меньше весить. :confused:

Digrol 27.03.2008 14:00

Цитата:

Сообщение от Turtle (Сообщение 38896)

Сори, не ожидал, что в вопросе "Что такое "контрольная сумма MD5" и для чего она нужна?" можно найти ссылку на подобный файл =)
И это не правила, а faq ;)

Нашёл там ссылку только такую:
http://multiki.arjlover.net/md5/0check_weekly_log.html
но страничка обновляется не когда изменился контент архива, а по таймауту, и главное - страничка почему-то содержит только 1593 файла из 2503.
Дайте плз файлик со всеми md5, идея переименования на основе md5 мне понравилась :)

А насчёт папки с ярлыками - всё равно не пойму зачем...
Ведь открыть файл со списком фильмов - не сложнее чем зайти в папку на рабочем столе. А для просмотра нужного видео просто кликнуть на ссылку "Смотреть" =)

Сделать просто список имеющегося видео, без мета-информации о видео и возможности докачать недостающие видео-файлы - что ж проще-то: слепить хтмл со строками типа:
<a href="file:/path/13.reis.avi">13 рейс</a>
И всё. Можно и такой тоже сделать - т.е. получим список имеющегося добра по-русски, не меняя при этом имён файлов - но эта "функция" уже реализована утилитой.

Ну не повернётся у меня рука делать 2500 тыщи файлов для того, чтобы открыть другие 2500 тыщи файлов =)

Ждём мнений "обычных" пользователей...
Видимо, многие по-прежнему пишут кучки файлов на dvd и cd...
Имо, хранить и обновлять на них коллекции - ну очень не удобно.

RUSpectrum 27.03.2008 14:05

Цитата:

Сообщение от Turtle (Сообщение 38912)
База сейчас и так почти уже есть, но обыкновенная. :)

В том то и дело, что в MySQL базу никакими волшебными заклинаниями клиентской программе не добраться.

Или вы говорите об HTML-страницах с описаниями фильмов / мультфильмов?
C HTML проблематично манипулировать - сортировать, фильтровать, менять ссылки на локальные (как в данной программе) и т.д.

Цитата:

Сообщение от Turtle (Сообщение 38912)
А от главных страниц по-прежнему требуется как можно меньше весить. :confused:

Ну это Вы зря... XML будет весить меньше.
Есть важное НО: я не говорю о замене HTML-списков на XML-список, а говорю о наличии альтернативного XML-списка.

т.е. основная часть пользователей как обычно открывают HTML-списки.
а те, кто установил прикладную программу (например, программу Digrol'а) будут загружать XML-список.
С XML-списком работа по любому значительно эффективнее (плюс исключаются глюки).

RUSpectrum 27.03.2008 14:19

Кстати, тогда появляется возможность "прикрутить" RSS-новости (т.к. это тоже XML), помечать в списке новые поступления как "New" или "Новинка"... ой, да много чего тогда можно будет!

Turtle 27.03.2008 14:27

Digrol, я говорю о людях, которым очень трудно понять, что "вот не надо щёлкать" в подобном списке на онлайн-файлах... ;) Да и сам запуск браузера — только лишь для того, чтобы в нём выбрать фильм — для них тоже явно лишнее. А ведь у почти всех этих людей интернет таки есть, и можно поставить тихий торрент-клиент, ну и т.д., поэтому незнание ими, как называются и где же лежат скачанные оригинальные файлы, будет благом для всех. :D

Turtle 27.03.2008 14:35

RUSpectrum, я человек маленький. :) Оффлайн-база, конечно, вещь замечательная, но сейчас придёт ArjLover и скажет, что он про всё это думает. :D

P.S. Пожалуйста, выберите акцентный стиль потемнее, нынешний ярко красный на большинстве ноутбуках и TFT-TN под углом абсолютно не видно.

RUSpectrum 27.03.2008 14:46

Цитата:

Сообщение от Turtle (Сообщение 38917)
P.S. Пожалуйста, выберите акцентный стиль потемнее, нынешний ярко красный на большинстве ноутбуках и TFT-TN под углом абсолютно не видно.

Никогда не думал, что могут быть такие проблемы у современных ноутбуков :( , и уж тем более у TFT :eek: ...

Может быть лучше угол зрения поменять (:D шутка)

Digrol 27.03.2008 16:19

Цитата:

Сообщение от Turtle (Сообщение 38916)
Да и сам запуск браузера — только лишь для того, чтобы в нём выбрать фильм — для них тоже явно лишнее.

Знать бы ещё, чего хотят пользователи, а сделать не сложно. Можно и ярлыков налепить, если нуно. =)

RUSpectrum 28.03.2008 12:43

Digrol, я бы сделал немного по другому:

Программу-менеджер для работы с видео-файлами (ориентируемся на сайт ArjLover).
Включая максимально возможную интеграцию с качалками (Reget, FlashGet, DM и т.д.), торрент-клиентами (µTorrent и т.д.), "интеллектуальные" функции по работе с MD5 контрольными суммами, формирование любых списков, получение информации о кодеках в видео-файлах, интеграция с VirtualDub и AviSynth,... ну и т.д.

Собственно пока хватит. :)

К сожалению без XML-списка - это всё будет хлипкое, жалкое и бесформенное... :(

Digrol 28.03.2008 15:19

Цитата:

Сообщение от RUSpectrum (Сообщение 38995)
Digrol, я бы сделал немного по другому:

Программу-менеджер для работы с видео-файлами
...

Ну так сделай. ;)
Цитата:

К сожалению без XML-списка - это всё будет хлипкое, жалкое и бесформенное...
Объясни плз, какую ты хочешь структуру XML и зачем?
Что ты с этим XML-ем хочешь дальше делать?

Имеющиеся на сайте html-файлы можно автоматически скачать (и файлы из каталога info в том числе), отпарсить и выдрать нужные поля данных и по ним сформировать xml-документ в заданной xsd-схеме (я, по крайней мере, чётко представляю как это можно сделать).
Допустим, сделать это можно, ну а дальше что ты с этим добром делать будешь?
Пока что я вижу только утверждение, что если будет "некий абстрактный XML-файл" и будет всем щасте.
Конкретнее изложи свои мысли...

зы. Извиняюсь, что на "ты", имхо, обращение на "вы" - нелепо смотрится при применении к человеку в единственном экземпляре. =)

RUSpectrum 28.03.2008 16:19

Цитата:

Сообщение от Digrol (Сообщение 39006)
Объясни плз, какую ты хочешь структуру XML и зачем?
Что ты с этим XML-ем хочешь дальше делать?

XML база - это отправная точка, список всего видео.
И как правильно заметил, Turtle - это offline база.
Цитата:

Сообщение от Digrol (Сообщение 39006)
Имеющиеся на сайте html-файлы можно автоматически скачать (и файлы из каталога info в том числе), отпарсить и выдрать нужные поля данных и по ним сформировать xml-документ в заданной xsd-схеме (я, по крайней мере, чётко представляю как это можно сделать).
Допустим, сделать это можно, ну а дальше что ты с этим добром делать будешь?

Угу... это мы уже проходили...
А кроме того закачивать несколько тысяч info-файлов - меня совсем не радует.
Чтобы потом "упарсить" их в 10% от их исходного размера? :eek:
Кстати, всегда будет вероятность проблемы не закрытого тэга (например, у тэга <img> нет закрытия (<img />), как это требуется по стандарту XML).

Кроме того, в существующем HTML-списке може не оказаться некоторых информативных полей которые есть в исходной базе (MySQL). :(

А не проще ли всё это сделать на стороне сервера путем переделки (переработки) скриптов, формирующих HTML-списки и info-файлы?
И сформировать одну offline-базу? :)

Цитата:

Сообщение от Digrol (Сообщение 39006)
Пока что я вижу только утверждение, что если будет "некий абстрактный XML-файл" и будет всем щасте.
Конкретнее изложи свои мысли...

Хм... постом выше было написано, как я это вижу.
Конкретнее не могу, т.к. всё это делается в процессе разработки программы. :)

Однако приведу интересный пример (кстати, читал на этом форуме):
1) Первый "сторонний" пользователь размещает свой список видео-файлов на форуме (список формирует программа).
2) Второй "сторонний" пользователь размещает свой список видео-файлов на форуме (список формирует программа).
3) Предположим, что существует этот самый заветный XML-файл, описывающий весь контент на ArjLover.

Собственно появляется возможность сравнить какие файлы пересекаются (копии) как между первым и вторым пользователем, так и между контентом ArjLover.

А имея две XML-базы (например, месячной давности и сегодняшняя) можно сравнивать "что новенького", динамику роста архива ну и т.д.

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

Здесь есть посетители (хотя и не много), которые занимаются сбором видео-коллекций... хм... ну типа профессионально, а не ради одног-двух мультов.
Наверное есть такие и с Украины (у них там русскоязычный "голод")...

Надеюсь, что пояснений пока хватит. :)

Digrol 28.03.2008 19:05

Цитата:

Сообщение от RUSpectrum (Сообщение 39015)
XML база - это отправная точка, список всего видео.

Делать в XML именно базу данных - не смешно.
Делать что-то наподобие HTML-списка - а смысл?
Как его потом в оффлайне просматривать обычному пользователю?

Цитата:

Угу... это мы уже проходили...
А кроме того закачивать несколько тысяч info-файлов - меня совсем не радует.
Чтобы потом "упарсить" их в 10% от их исходного размера? :eek:
Кстати, всегда будет вероятность проблемы не закрытого тэга (например, у тэга <img> нет закрытия (<img />), как это требуется по стандарту XML).

Кроме того, в существующем HTML-списке може не оказаться некоторых информативных полей которые есть в исходной базе (MySQL). :(
Не знаю что вы проходили, все эти трудности - мелочи. При желании это делается легко. Я ж не говорю, что всё в ручную делать надо, программку сделать и вперёд.
Цитата:

А не проще ли всё это сделать на стороне сервера путем переделки (переработки) скриптов, формирующих HTML-списки и info-файлы?
И сформировать одну offline-базу? :)
Для тебя - проще, для того, кто это будет делать - нет =)
Оффлайн базу, например, я себе по-любому сделаю, когда доделаю текущие задачи.

Цитата:

А то я вот читал, что народ это сравнивает "ручками и глазками", вместо того, чтобы "задействовать всю мощь своего компьютера". :o
Здесь есть посетители (хотя и не много), которые занимаются сбором видео-коллекций... хм... ну типа профессионально, а не ради одног-двух мультов.
Для сравнения контента видео ещё не придумали искусственный интеллект, а произвольные имена файлов и размеры - плохой критерий отбора...
Но некоторые процессы можно автоматизировать, что я и делаю для себя.

-------------------------------------------
Короче - флуда много - а толку мало =)
Вот ты постоянно говоришь слово XML, с тем же успехом я могу говорить Java или c++.

Вот конкретные вопросы (писать программу для этого не нужно):
1) Если ты программер и знаком с XML - то предложи структуру в XSD, если не знаком - то не надо цепляться просто так за эту аббревиатуру.
2) Предложи технологию для работы с полученным XML-файлом - чем открывать, редактировать, обновлять.
3) Если не программер, а продвинутый пользователь - то сформулируй чётко общий функционал софта, пока что вижу фразы только такого плана: "ах если был бы софт, который за меня всё сделал, было бы круто".

Нуно конструктив. Я уже не говорю про чьё-то личное время на его реализацию...

Uswer 28.03.2008 20:13

На всякий случай. Надеюсь, перехода на личности не будет :)

Digrol 28.03.2008 20:30

Всё под контролем :cool:

RUSpectrum 28.03.2008 21:08

C# Вам знаком?

MSDN - System.Data (Namespace).
Перечень основных классов для работы с данными.
Собственно в классе DataSet есть ответ на Вашу (но не мою) проблему, можно ли работать с XML-данными.
К сожалению ответ разочарует Вас. :p

MSDN - System.Xml (Namespace).
Перечень основных классов для работы с XML.
По соседству находятся XSL (и XSLT) и т.д.
Ответ (можно ли работать с XML-данными) снова разочарует Вас. :p

XSD? А что там может быть необычного?

Пример XML (XSD сами сгенерируете :D ):

Код:

<? стандартный заголовок XML ?>
<ArjLover LastUpdate="28.03.2008" >
    <Films BaseHttpUrl="http://film.arjlover.net/film/" BaseTorrentUrl="http://film.arjlover.net/torrents/" >
        <Film Duration="01:17:43.000" VSize="640x480" VCodec="DivX" ACodec="mp3" Fps="25" FSize="735533056" MD5="28bd320ff01567eeab9980a12680aa5d" ... прочие атрибуты ... >
            <Title>Битва за Москву (1/6)</Title>
            ... прочие тэги ...
            <Http>bitva.za.moskvu.1.avi</Http>
            <Torrent>bitva.za.moskvu.1.avi.torrent</Torrent>
        </Film>
        <Film ... >
            ...
        </Film>
    </Films>
</ArjLover>

Ну и так далее...
Как говорится - "Дерзайте, юноша!"
А Ваша "распальцовка" мне не интересна...

Внимательно прочтите пост выше. Один из вариантов функционала я уже приводил.

P.S. - Кстати, попрошу на Вы.


Часовой пояс GMT +3, время: 11:53.

vBulletin® Version 3.8.7.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot