Добрый вечер.
Пришла мне в голову такая идея - было бы неплохо иметь программу, которая предоставляет удобный интерфейс для работы со всевозможными сайтами. Например, существует множество программ для работы с видеосервисами (поиск, скачка, итп.) - youtube, итп. Если не ошибаюсь, кто-то из местных писал «клиент» для ЛОРа. Хочелось бы иметь _одну_ софтину для автоматизации работы с разными сайтами (поддержка которых добавляется с помощью модулей). При этом хотелось бы иметь не просто альтернативный интерфейс без всего лишнего, а в некоторой степени интеллектуальную программу, которая добавляет функции автоматического поиска, ведения истории, генерации отчётов, итп.
Что я имею ввиду: предположим, мы работаем с популярным торрент трекером rutracker; меня интересуют, скажем, дистрибутивы Linux; я бы хотел иметь возможность указать программе, чтобы она вытащила информацию обо всех соответствующих страницах и сохранила её в локальную базу данных; при этом я бы хотел, чтобы эту информацию она регулярно обновляла и в случае появления новых раздач я получал бы уведомление; затем из этой базы мне нужно получить информацию обо всех раздачах Ubuntu, в которых более 5 сидеров и сгенерировать отчёт в виде одной html страницы, которую я мог бы быстро просмотреть; на странице я бы хотел видеть основную информацию о раздачах, плюс для каждой из них скриншот (который программа сама добудит из страницы с раздачей и сохранит на винт); в дальнейшем мне может потребоваться автоматически вытягивать и передавать на закачку в Transmission все торренты, в названиях которых фигурирует amd64, x86_64; также мне может потребоваться посмотреть, какие торренты были выложены DD/MM/YYYY. Пример конечно надуман, но надеюсь идея понятна.
Фактически, нужно делать следующее: погулять по сайту, почитать страницы, вытащить из них ценную информацию и построить из всего этого базу данных; если надо, построить отчёты; если надо, что-то автоматом скачать; если надо, запустить внешнюю программу с нужными параметрами; всё это должно при необходимости управляться scheduler'ом.
Конечная цель - вместо ежедневной траты более часа на просмотр нужных сайтов тратить не более 15 минут.
Пример с ЛОРом: каждый день с утра получать одну страницу с заголовками всех тем из Development, Games, плюс в конце страницы вывести всё новенькое из Talks в виде аля imageboard (название темы + первое и последние 2/3 сообщения), при этом порезав все темы и сообщения пользователей XXX, YYY, ZZZ (любые совпадения с реальными аккаунтами случайны); ко всему прочему вывести список моих тем, созданных не более месяца назад, в которых имеются новые сообщения.
Пример с youtube: зайти под моим аккаунтом, посмотреть, если ли новые видео в каналах, на которые я подписан; если есть - все видео скачать и сгенерировать страницу с названиями видео и 4 скриншотами к каждому.
Получается, что сама программа должна предоставлять базовые функции - настраимого скриптами бота, интерфейс к базе, ведение истории, интерфейс к wget, youtube-dl, генератор отчётов, итп. Модули соответственно должны всё это использовать а также предоставлять шаблоны отчётов, шаблоны запросов, gui для настройки самих себя и прочие удобства.
Первый вопрос - попадалось ли вам что нибудь подобное ? Если нет, то какие будут предложения: на чём писать, и что можно взять готового ?