Получить только соответствующую часть веб-сайта


Как Плагин веб-клипера Evernote или Объявляет плагин только соответствующую статью/публикацию/часть содержимого страницы? Вот скриншот из плагина evernote:

enter image description here

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

Каждый веб-сайт имеет разные макеты, у некоторых есть боковая панель, у некоторых нет, разные теги, для основная часть/статья/контент, некоторые используют <article> или <section> HTML5, другие используют <h1> > <p>, некоторые используют <h2> > <p>, а другие вообще не используют. Таким образом, существуют различные комбинации тегов, а также макеты веб-сайтов.

Может ли кто-нибудь предложить решение для получения основной статьи/публикации/контента, пожалуйста, с помощью Javascript или PHP?

Author: Dev555, 2012-02-09

2 answers

Вы можете выполнить простой синтаксический анализ DOM и выполнить поиск <div>s и <p>s, содержащих больше текста (текст! не HTML-код!). Однако, независимо от того, какой интеллектуальный метод вы выберете для определения местоположения содержимого, вы должны начать с DOM-анализа, поэтому давайте посмотрим на DOM-анализ PHP-библиотек.

В любом случае, вы можете начать с этого:

Http://w-shadow.com/blog/2008/01/25/extracting-the-main-content-from-a-webpage/

Выглядит довольно хорошо и дает технические пояснения, если вы хотите написать что-то свое.

 7
Author: lorenzo-s, 2012-02-09 09:09:42

Большинство движков блогов присваивают этому div идентификатор "контента".

  • В javascript вы бы просто сделали $('#content')
  • В php вы бы сделали DOMDocument::getElementById('содержимое').
 0
Author: pguardiario, 2012-02-10 00:24:39