Список вопросов
Как зайти в Даркнет?!
25th January, 01:11
6
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
894
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
914
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4350
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Информация по паукам (crawler, синтаксический анализатор) в PHP?
Просмотров: 271
 
Ответов: 4
Здравствуйте.
Возникла передо мной задача написать парсер контента сторонних сайтов на php. Идеология работы этого модуля следующая:
— администратор задает правила парсинга конкретного сайта (страницы), присваивая определенным селекторам (тегам) веса;
— модель парсит сайт (страницу);
— полученный после парсинга результат мы анализируем, применяя к нему правила, введеные администратором. На выходу мы должны получить контекст страницы вида array('word1'=>int(...), 'word2'=>int(...)...). Здесь word1 — это слово, выделенное пауком со страницы, а int(...) — это вес содержимого, полученный после применения к результату парсинга правил администратора. Т.о. мы можем получить примерный контест страницы, т.е. система получит представление о выжимке содержимого с анализируемого ресурса.
Парсинг контента — это не проблема. Можно использовать нативный DomDocument — XPath (быстро по скорости, но затратно по созданию и поддержке), Zend_Dom_Query илиphpQuery или Нокогири(тема) хабраюзера w999d — медленнее по скорости, зато проще по написанию, хорошие возможности для парсинга. (Если кто-то знает хорошие библиотеки для парсинга, не указанные мной, — подскажите.)
Так вот, сам вопрос, каким образом организовать анализ и разбор содержимого на странице, чтобы на выходе получить некую выжимку, контекст содержимого (сайты для парсинга будут разнообразные по структуре и содержанию). Есть ли открытые решения (open-source crawlers), которые бы эффективно анализировали страницу? Может быть вы подскажите информацию по построению поискового индекса?
Прошу прощения за несколько расплывчатое изложение вопроса, спасибо за внимание!
Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться