powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / на чем писать паука (crawler)
18 сообщений из 18, страница 1 из 1
на чем писать паука (crawler)
    #37876126
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне нужно отслеживать информацию на нескольких тысячах сайтов.
На многих из них нужна регистрация. (а значит - запросы будут и GET и POST, а протоколы http/https)
На многих из них нужная мне информация появляется в результате работы JavaScript.

В качестве платформы планирую использовать Ubuntu Server 12.04 LTS
_______________________________________________________________
Уже нашел:
- как при помощи wget залогиниться, скачать, сохранить сессию .

Теперь надо понять:
- как вызвать выполнение JavaScript и разбор DOM
(поиск нужного элемента на странице, получение значения). ???
- как сохранить результат в MySQL или Oracle

Теоретически я мог бы написать расширение к firefox для всего этого.
Но, кажется это не правильно (не производительно, и нужно будет как-то подавить запросы к пользователю),
а правильно - как-то заставить работать движок Gecko.
Но не радует это .

Какие есть идеи, или просто - полезные ссылки ?
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876144
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ART-CODEКакие есть идеиВаша же ссылкаВ качестве наиболее простого выхода из сложившейся ситуации некоторые разработчики сторонних проектов рассматривают возможность перехода на использование движка WebKit.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876159
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,
Спасибо, тоже думаю об этом.
Пока еще не изучил вопрос основательно.

Еще хотел разобраться с http://lucene.apache.org/ - там так много всего и связанных с этим проектов.
Как из всего этого выделить нужную мне функциональность?
Наверно, на месяц читать, скачивать, настраивать, тестировать..
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876169
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ART-CODEЕще хотел разобраться с http://lucene.apache.org/ - там так много всего и связанных с этим проектов.Хм, при беглом просмотре описания никакой связи не вижу.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876227
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,
Там в Related Projects есть nutch , который, кажется умеет быть crawler
http://today.java.net/pub/a/today/2006/01/10/introduction-to-nutch-1.html
Еще разобраться надо: что оно может и насколько это мне подойдет.
Жаль, только, что все на Javа, а не на C++.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876244
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ART-CODEНа многих из них нужная мне информация появляется в результате работы JavaScript.тогда в любом случае понадобится браузерный движок, например, вышеупомянутый WebKit

хотя если там есть взаимодействие с юзером - плохи дела. Потребуется индивидуальный подход к сайту.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876271
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ART-CODE,

Боюсь, что даже использование браузерного движка не поможет.
Типа "получить и сохранить" - дело очень сложное. Особенно, в первой его части. Потому что "получить" может зависить от действий пользователя, да хоть и от таймера. Короче, в общем случае задача не решается. Поэтому роботы такие глупые, а вовсе не программисты, которые их сделали.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876298
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок,
буду "копать" в сторону WebKit и индивидуального подхода к некоторым сайтам.
(возможно, удастся просто договорится об отправке данных мне их серверными средствами или об открытии канала RSS)
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876339
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы ссылка не потерялась: http://code.google.com/p/webscraping/
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876381
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще: mechanize - почти то, что нужно ( только без JavaScript )
Обсуждение темы с интересными ссылками .
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876688
MyNiGoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
python и grab
и хорошенько подумать насчет выполнения яваскрипта, в 99% случаев это так или иначе упирается в вытаскивание данных со страницы и отправки запроса с нужными параметрами. Куки специфические можно собрать и подложить заранее.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876924
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 07/12/2012 12:04 PM, ART-CODE wrote:
> Мне нужно отслеживать информацию на нескольких тысячах сайтов.

Я б на common lisp бы писал. Или на питоне.

> Теперь надо понять:
> - как вызвать выполнение JavaScript и разбор DOM

Ээээ.. разбор DOM -- это видимо разбор просто HTML.
А вот как ты собираешься без модели документа реализованной
(как в WEB-броузере) выполнять JavaScript -- я слабо понимаю.

Тогда уж и пиши на JavaScript.

> а правильно - как-то заставить работать движок Gecko.
Gecko рисует графику, нафига он тебе сдался в контексте этой задачи ?




Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37876928
MyNiGoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
разбор DOM очень удобно делать xpath. Я никак вот только не пойму, зачем яваскрпит человеку сдался.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37881538
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ART-CODEМне нужно отслеживать информацию на нескольких тысячах сайтов.
На многих из них нужна регистрация. (а значит - запросы будут и GET и POST, а протоколы http/https)
На многих из них нужная мне информация появляется в результате работы JavaScript.

В качестве платформы планирую использовать Ubuntu Server 12.04 LTS
_______________________________________________________________
Уже нашел:
- как при помощи wget залогиниться, скачать, сохранить сессию .

Теперь надо понять:
- как вызвать выполнение JavaScript и разбор DOM
(поиск нужного элемента на странице, получение значения). ???
- как сохранить результат в MySQL или Oracle

Теоретически я мог бы написать расширение к firefox для всего этого.
Но, кажется это не правильно (не производительно, и нужно будет как-то подавить запросы к пользователю),
а правильно - как-то заставить работать движок Gecko.
Но не радует это .

Какие есть идеи, или просто - полезные ссылки ?erlang
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37881541
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37882552
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaN,
Интересная статья. Для финальной версии системы постараюсь сделать так.

Есть еще один немало важный фактор:
сколько времени понадобится , чтобы изучить новый для меня ЯП.
Ведь для полномасштабной работы нужно будет и взаимодействие с БД добавить
и отправку Email и сложную логику принятия решения - идти ли дальше по ссылкам, найденным на странице
и много еще чего.

Erlang или Python - придется изучать с "0" (то же про XPath запросы )
А это значит, что нужно иметь под рукой большое количество примеров кода на разные случаи
и активное сообщество - кто сможет подсказать по проблемам программирования.

PHP - небольшой опыт есть (доработка Joomla компонентов)
С++ - есть опыт, но только под Windows.

Если сократить время за счет обучения,
то для меня - быстрее будет получить результат на PHP
php-crawler-tutorial
simple-php-crawler-example

Это для предварительной/тестовой версии,
а к Erlang, видимо, еще вернусь - но чуть позже.

Вопрос о выполнении JS вынесем пока за скобки (начать можно и без этого).
Да, я понимаю, что можно имитировать Ajax запросы,
но для этого нужно заранее знать как работает "движек" сайта.
(т.е. не всегда удастся автоматически находить новые сайты и добавлять их в контроль-список без участия человека)


Кстати, я подумываю о том, чтобы разбор документа делать хранимками на MySQL
Там есть XPath - MySQL и regexp

В моем случае - без анализа на стороне MySQL сервера никакие дальнейшие действия паука не допускаются.
Поэтому результат разбора документа - все равно/полюбому нужно будет передавать на сервер - для дальнейшего анализа.
Так, может быть, сразу на сервере и извлекать эти данные ? И тут же использовать результаты во всевозможных Join-ах ?
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37882595
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ART-CODEсколько времени понадобится , чтобы изучить новый для меня ЯП.эрланг самый быстро-изучаемый яп(если без отп) - из всех что я знаю.
...
Рейтинг: 0 / 0
на чем писать паука (crawler)
    #37882685
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaN,
Нашел интересные статьи про Erlang на хабре и на других сайтах.
Чем больше читаю, тем больше желание попробовать, как говорится, "прямо сейчас" .
Все, ближайшие выходные "пропали". :)
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / на чем писать паука (crawler)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]