2009-02-19 14 views
1

Je fais une analyse en extrayant du contenu Web en utilisant mes robots d'exploration. Les pages Web contiennent souvent du fouillis (comme des publicités, des images inutiles et des liens superflus) autour du corps d'un article qui distrait un utilisateur du contenu réel.Extraire du contenu complet à partir de pages Web

Pour extraire le contenu sensible est un problème difficile que je comprends, compte tenu du fait qu'il n'y a pas de norme qui définit la position réelle d'un article de nouvelles/blog/commentaire/article dans la page Web.

je pourrais trouver des solutions open source comme ceci: https://metacpan.org/pod/HTML::ContentExtractor

Mais je suis curieux de savoir si quelqu'un a traité ce et a obtenu le taux de réussite raisonnable. Cela semble un problème assez commun et j'aimerais croire que de nombreux experts sont là. Je préférerais une solution basée sur JAVA mais ce n'est pas une règle difficile. S'il vous plaît donner quelques entrées. Je vais profondément apprécier.

Répondre

1

Idéalement, vous recherchez un flux RSS pour obtenir le contenu brut.

Ce n'est pas un standard pour la structure globale & qui signifie en HTML. Les auteurs définissent différents éléments dans leur page. Les moteurs de recherche ont investi beaucoup dans ce domaine, et ils ont leur propre sauce secrète pour indexer le contenu et obtenir une sorte de structure pour le classement de la recherche. Jusqu'à ce que nous ayons le «web sémantique» annoncé depuis longtemps, nous ne pouvons que faire des suppositions éclairées sur la structure et la signification des pages HTML arbitraires.

Mais, en théorie:

Rechercher des balises de titre. Ceux-ci devraient vous donner une idée de l'endroit où commencer à lire, et j'espère un aperçu de l'ordre d'importance pour le contenu.

Recherchez l'ID et les classes d'élément communs. Un site bien structuré pourrait avoir des choses comme <div id="content"> et <div class="article">, ce qui est aussi sémantique que cela se fait ces jours-ci. Découvrez également les noms des éléments standard utilisés par les plates-formes CMS courantes telles que WordPress ("post") ou Drupal ("node"). Souvent, ceux-ci seront utilisés pour baliser le contenu.

Dernier point mais non des moindres, cherchez microformats.

0

Il y a maintenant un number of projects avec cette tâche comme objectif principal.

Le package NPM WCE (Javascript) est intéressant car il utilise un certain nombre d'autres modules d'extraction de contenu sous le capot.

Désolé, je voulais répondre à cette question plus tôt, mais j'étais occupé.