Понадобилось мне собирать информацию с других сайтов, чтобы перенести на сайт фирмы. Проблема в том, что не хочется это делать вручную. Собираюсь написать парсер на С++. Боюсь, что уйдет много времени. Сталкивался кто-нибудь с подобной задачей?Может есть какие-нибудь готовые классы или решения?
28 ноября 2008 в 17:04
Если приспичило на плюсах, то повторюсь – ANTLR. На оф. сайте найдешь готовое описание HTML. Удачи…
//www.antlr.org
27 ноября 2008 в 19:03
#13:
wscript позволяет юзать жабаскрипт вне браузера
Буквально пару дней назад писал скрипт для скачивания xml и вытаскивания из него данных.
Сохранение в файл делал тривиально… через параметр ">" командной строки.
27 ноября 2008 в 16:02
#22:
POSIX-реги – это ДА Но речь-то в первую очередь о PCRE.
#23:
Дык сам вопрос подразумевает что неудобно ещё ни на чём
27 ноября 2008 в 15:01
+1) Абсолютно согласен. Пишите на том, на чем удобней – это конструктивное предложение.)
27 ноября 2008 в 14:05
реги, сцука, своеобразные…
может у меня какого-то угла на башке не хватает, но когда я берусь за синтаксис регов (к примеру, posix), то если не пользуюсь им в течении 2-3 месяцев, забываю все нафих подчистую! wtf?! O_o
27 ноября 2008 в 14:00
"Лучше день потерять, потом за пять минут долететь!" (С)
Просто задача такая, что исполняющий её человек в принципе ДОЛЖЕН хотя бы минимально знать перл и регэкспы, а иначе он занимается немного не своим делом, равно как немного не тем будет забивать гвозди.
Ведь реально на том же перле это будет не столь уж большой скрипт, в то время как на C++ это целая простыня исходников и как минимум пара дополнительных библиотек.
27 ноября 2008 в 13:03
превращается в очередной холивар.
на самом анекдот про реги был в тему – делать надо на том на чем удобнее. Нафига учить человеку перл если он сделает не хуже на бейсике или плюсиках.
27 ноября 2008 в 13:02
Это если php-cgi вообще есть А если он исключительно как mod_php поставлен? Мне пришлось wget-ом с сохранением в /dev/null извращаться ) Опять же, следующий вопрос – а если обработка сайтов продлится две минуты? ПХП имеет привычку секунд через 30 совершать харакири.
Перл тут надёжнее…
27 ноября 2008 в 13:02
насколько я помню там был параметр время жизни скрипта
27 ноября 2008 в 13:01
/usr/local/bin/php /home/user/parser/script.php в crontab
27 ноября 2008 в 11:03
2 Даниил nevermind Бяльский
Не буду перечислять всего, ответь лишь на один простой вопрос: а как ты его запустишь?
Извратиться можно, да. Сам извращался на хостинге, на котором только PHP и был. Но не нужно привыкать к извращениям
27 ноября 2008 в 2:03
чем PHP не вариант, объясните недалекому PHP-кодеру?)
27 ноября 2008 в 0:02
Один существенный минус – жабоскрипт-то работает сугубо внутри браузера и к сохранению данных доступа никакого не имеет
Проще говоря – сам по себе жабоскрипт даже не имеет средств работы с HTML. Только доступ к объектам окружения.
Перл, перл…
27 ноября 2008 в 0:02
Парсер на C++ – это извращение, какое-то. Perl, Python- то, что нужно. Для каждой задачи используйте подходящий инструмент, не надо упираться в один язык и кодить на нем все подряд.
27 ноября 2008 в 0:01
Про перл и питон не скажу точно… не знаю. Но javasсript для этой задачи точно подойдет больше чем плюсы, имхо. Впрочем, по слухам, перл с питоном еще лучше справляются.
26 ноября 2008 в 23:03
> MSHTML
Зачеееееем? О.о Разработку утилитки на пару тысяч человеко-часов продлить? Памяти метров 800 скушать? )))
26 ноября 2008 в 23:01
MSHTML
26 ноября 2008 в 21:02
Нужен именно HTML-парсер – там такой tag soup бывает, что любойxml-парсер руганётся на невалидность и сдохнет. Уж и вовсе проще регэкспами иногда.
26 ноября 2008 в 20:05
libxml вроде бы умеет парсить и html, если постараться.
Но вообще действительно, скорее всего будет лучше написать эту программу на каком-нибудь языке попроще – перл, питон. Задача ведь не критичная к производительности.
26 ноября 2008 в 16:01
Да богу ж ради, юзай что хочешь. Надо для такой простой задачи C++ – пиши два месяца утилиту на C++, никто не возражает
Не хочешь брать любой язык с хорошей заточкой под web (perl, python) – не бери, дело барское. Я перловский HTML::Parser никому не навязываю)
26 ноября 2008 в 14:03
Только Perl!! php нивкоимслучае!!!
26 ноября 2008 в 14:03
ANTLR вам в помощь…
26 ноября 2008 в 14:03
Некоторым программистам, когда они сталкиваются с какой-то проблемой, приходит в голову такая мысль
— О, я знаю! Это можно сделать с помощью регулярных выражений!
Это означает, что у этого програмиста теперь ДВЕ проблемы. (с)
Не использовал Perl. В чем профит использовать именно его?
26 ноября 2008 в 14:02
perl, php
26 ноября 2008 в 14:00
Perl! Perl!!! Perl, и не сношать себе моСК!