MultiReader - первые шаги
Итак, после двух недель отдыха я снова с вами.
Новый проект - мультиридер, программа, которая будет грабить сайты и складывать их контент в отдельную кучку. Именно с нее мне надо было начинать, а не с мультипостера. Ну, да ладно. Не все так плохо.
Идея программы не нова - вы можете встретить подобные продукты, созданные для работы на стороне сервера. Это набор скриптов (чаще всего PHP), которые запускаются по расписанию, а доступ к приложению возможен с любого компьютера, подключенного к интернету, что является несомненным плюсом. Вторым плюсом можно назвать возможность закачки огромного количества страниц в считанные часы. Но это, правда, возможно только если хостинг, на котором расположены эти скрипты, имеет достаточно толстый канал. Минусом сервер-ориентированных приложений является не слишком хорошая управляемость и время, необходимое на доступ к данным. В то же время настольные приложения лишены подобных недостатков, предоставляя доступ к данным практически мгновенно. Вы можете управлять заданиями, скоростью загрузки и прочими задачами, и все это будет происходить чрезвычайно быстро. Минусом данного подхода является необходимость постоянного подключения к интернету и включенный компьютер. Однако, вспомним программу TelePort и не будем капризничать.
Программа будет выполнена в виде десктопного приложения. Внешний вид будет до предела простым. Ниже я представляю скриншоты основных экранов программы, которые уже реализованы и функционируют.

Главное окно программы. Содержит три закладки: Проекты, Настройки и Журнал. На закладке Проекты можно видеть четыре проекта, три из которых остановлены, а четвертый работает. Две последние колонки сообщают о количестве ожидающих и уже загруженных страниц.

Окно журнала. Всего две колонки: дата и время сообщения, и само сообщение. Видно, как две страницы проекта были загружены прежде, чем он остановился.
Новый проект можно создать с помощью меню Файл-Проекты-Создать. При этом открывается окно мастера нового проекта.

Кликаем по кнопке Вперед, и попадаем на форму выбора типа проекта.

Выбираем второй тип проектов и жмем Вперед. Создание первого типа пока что не реализовано, хотя если полезть в базу и подправить в таблице проектов одно значение, получим проект типа Паук. Кстати, четвертый проект с главной страницы (помните, он так и назывался - spider, т.е. паук), был сделан именно таким способом.

Второй шаг мастера проекта типа Диапазон. Указываем шаблон адреса страницы и начальное и конечное значения диапазона. Перед продолжением надо нажать на кнопку Проверить, чтобы программа убедилась, что шаблон страниц указан верно. Правда, этот шаг пропустить не удастся - программа не пустит вас дальше, если загрузка страницы не будет опробована.

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

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

Последний шаг в создании нового проекта - его имя. Имя должно быть уникальным и достаточно информативным. Нажимаем на кнопку Создать проект, и вуаля, проект создан. Все, что нам останется, так это запустить его в работу и подождать, пока значение в колонке “В очереди” не станет нулевым. Тогда наступает следущий шаг - экспорт.

На этом окне все просто и ясно. Вы можете выводить тексты как в отдельные файлы, так и в один. При этом вы можете выбрать выбрать одно из стандартных расширений, или указать свое. При желании весь экспорт может быть упакован в архив.
Вроде бы все. Теперь осталось, чтобы кто-нибудь прочел этот пост и сказал, что ему будет неудобно делать, а чего и вовсе не хватает.



05.01.2009 в 10:50
брал у вас синонимайзер, теперь присматриваюсь к другим проектам.
неплохо бы было реализовать при выборе сайта и страниц кроме диапазона стр. но и по вхождению слова в урл как в продукте vipbablo
тоесть качаем все стр сайта http//:site.com в урле которых присутствуют слова arlicle help obzor и так далее.
обычно нужные статьи лежат не только в определенном диапазоне но и раскиданы по папкам, вот их и добалять в проекте
05.01.2009 в 15:48
На самом деле это уже реализовано, я еще не успел выложить новые скриншоты. Сегодня я напишу новый пост, в котором покажу новые скрины.
Сейчас программа проходит серьезное тестирование, и вскоре будет доступна для скачивания.
Кстати, продукт от випбабло - это украденный скрипт, ранее ивестный под именем TextMaker. Ребята поступают очень непорядочно, но это их дело.