Есть вопрос по парсингу текста с помощью Php

асс

Мой дом здесь!
Регистрация
13 Окт 2006
Сообщения
762
Реакции
230
Добрый вечер, подскажите пожалуйста.
Можно ли регулярками выдрать текст на странице.
Допустим подсчитать количество русских букв в тексте определить самый большой кусок и вырезать его.


Наример стили скрипты фреймы можно вырезать с помощью
регулярок.
PHP:
 $text= preg_replace('/<object(.*?)<\/object>/is',"", $text);

Буду очень признателен за идеи или примеры.

ТОесть интересует работа без привязки в дизайну и тегам.

Вырезать регуляркой с привязкой к шаблонам нет сложностей,

например

PHP:
preg_match('/<img src=\"(.*?)\" title=\"(.*?)\" alt=\"\" \/><strong>(.*?)<\/strong><\/div><p>(.*?)<\/p><p>(.*?)<\/p><p>(.*?)<\/p><\/div><ul class=\"b-tabs\"><li class=\"b-tabs__item b-tabs__active\">(.*?)<\/li><li class=\"b-tabs__item\">/si', $result, $find);



а вот как выдрать не привязываясь к дизайну.
 
насчет регулярок, не могу сказать) не люблю я их))))

возможно XPath Вам поможет.
Установите расширения FireBug и FirePath на FireFox'е ))
Поможет удобно генерировать запросы и быстро разбираться.
 
Задача слишком туманно сформулирована. Чтобы "выдрать текст не привязываясь к тегам" - в простейшем случае, можно обойтись конфиг-файлом, где ты сам задаешь вид шаблона тегов для регулярки, либо пишешь самообучающуюся систему с элементами ИИ, которая по известным тебе критериям - определяет, что именно нужно вырезать на странице итд. Обычно парсер пишется для Н конкретных сайтов, и особенности их исходного HTML-кода зашиваются куда-нить в конфиг, писать типа-ИИ-парсер - себе дороже ;)
 
Задача слишком туманно сформулирована. Чтобы "выдрать текст не привязываясь к тегам" - в простейшем случае, можно обойтись конфиг-файлом, где ты сам задаешь вид шаблона тегов для регулярки, либо пишешь самообучающуюся систему с элементами ИИ, которая по известным тебе критериям - определяет, что именно нужно вырезать на странице итд. Обычно парсер пишется для Н конкретных сайтов, и особенности их исходного HTML-кода зашиваются куда-нить в конфиг, писать типа-ИИ-парсер - себе дороже ;)


Да это понятно, хотя мне кажется регуляркой можно составить осную часть работы.

Ведь есть же универсальные парсеры по ключевым словам например.
Вот и яхочу сделать подобное.
 
принцип примерно такой весь текст страницы разбиваем на td или на div и дальше анализ полученных блоков на количество текста и на количество ссылок в этом тексте ну и тд и тп
 
либа специальная продавалась с пару лет назад
разраб говорил что 100% эффект, продавалась за сумму что то около 100$ (в исходнике)
 
либа специальная продавалась с пару лет назад
разраб говорил что 100% эффект, продавалась за сумму что то около 100$ (в исходнике)
*** скрытое содержание ***


Вы забейте урл


Хотя на 90% справляется со своей задачей.

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

не хочу быть организатором складчины, буду рад если тему кто то другой создаст.

думаю на 3+ человек уже можно взять

либа то известная, наверняка у кого то на нулледе есть ...
мож кто поделится ?? :)
 
В некотором роде тема известная и довольно давно появилась. Генератор дорвеев был с таким вот модулем. Как то ...бабло называлось. Как уже сказали, основная идея - Мы находим слой в котором больше всего контента. Лучше\легче всего использовать dom парсер. Он знает о структуре документа. с учётом некоторых ньюансов, типа - нужно отбросить комментарии, их ведь может быть намного больше чем самого контента, контент может иметь не простейшую структуру типа <p>..</p> а ещё и таблицы и тп...

Особо не копал в этом направлении, но так и не смог придумать как расширить функционал этого метода, безшаблонного парсинга. А пока (как мне кажется, человеку который не клепает доры и ничего о них не знает) возможности скромные- можно парсить только типа новостников, форум\магаз\геллерею получить не получится нормально. + мусор. Либо нужно делать админку и валидацию проводить каждого сайта.

+ недавно человек писал о похожем скрипте: мол есть парсер, может утащить весь контент с любого сайта с сохранением структуры. Т.е можно без проблем вытащить и в любую цмс и не будет заметно что копипаст сделан на автомате. хотя я так и не понял - он его видел в работе или просто мечтал о нём
 
Назад
Сверху