Die Lesbarkeit besteht hauptsächlich aus Heuristiken, die in vielen Fällen "irgendwie gut funktionieren".
Ich habe einige Forschungsarbeiten zu diesem Thema verfasst und möchte den Hintergrund erläutern, warum es einfach ist, eine Lösung zu finden, die gut funktioniert und wenn es schwierig wird, eine 100% ige Genauigkeit zu erreichen.
Es scheint ein Sprachgesetz zu geben, das der menschlichen Sprache zugrunde liegt und das sich auch (aber nicht ausschließlich) im Inhalt von Webseiten manifestiert, das bereits zwei Arten von Text klar voneinander trennt (Volltext vs. Nicht-Volltext oder grob gesagt ". Hauptinhalt "vs." Boilerplate ").
Um den Hauptinhalt aus HTML zu erhalten, ist es in vielen Fällen ausreichend, nur die HTML-Textelemente (dh Textblöcke, die nicht durch Markups unterbrochen werden) mit mehr als 10 Wörtern beizubehalten. Es scheint, dass Menschen aus zwei Arten von Text wählen ("kurz" und "lang", gemessen an der Anzahl der Wörter, die sie emittieren), um zwei verschiedene Motivationen für das Schreiben von Text zu erhalten. Ich würde sie "Navigations" - und "Informations" -Motivationen nennen.
Wenn ein Autor möchte, dass Sie schnell erfahren, was geschrieben steht, verwendet er "Navigationstext", dh einige Wörter (wie "STOP", "Read this", "Click here"). Dies ist die am häufigsten verwendete Textart in Navigationselementen (Menüs usw.).
Wenn ein Autor möchte, dass Sie tief verstehen, was er / sie meint, verwendet er / sie viele Wörter. Auf diese Weise wird die Mehrdeutigkeit auf Kosten einer Erhöhung der Redundanz beseitigt. Artikelähnlicher Inhalt fällt normalerweise in diese Klasse, da er mehr als nur wenige Wörter enthält.
Während diese Trennung in einer Vielzahl von Fällen zu funktionieren scheint, wird es mit Schlagzeilen, kurzen Sätzen, Haftungsausschlüssen, Copyright-Fußzeilen usw. schwierig.
Es gibt ausgefeiltere Strategien und Funktionen, mit denen der Hauptinhalt vom Boilerplate getrennt werden kann. Zum Beispiel die Verbindungsdichte (Anzahl der Wörter in einem Block, die verknüpft sind, im Vergleich zur Gesamtzahl der Wörter im Block), die Merkmale der vorherigen / nächsten Blöcke, die Häufigkeit eines bestimmten Blocktextes im "gesamten" Web, die DOM-Struktur des HTML-Dokuments, das visuelle Bild der Seite usw.
Sie können meinen neuesten Artikel " Boilerplate Detection using Shallow Text Features " lesen , um einen Einblick aus einer theoretischen Perspektive zu erhalten. Sie können sich auch das Video meiner Papierpräsentation auf VideoLectures.net ansehen.
"Lesbarkeit" verwendet einige dieser Funktionen. Wenn Sie sich das SVN-Änderungsprotokoll genau ansehen, werden Sie feststellen, dass sich die Anzahl der Strategien im Laufe der Zeit geändert hat, ebenso wie die Extraktionsqualität der Lesbarkeit. Beispielsweise hat die Einführung der Verbindungsdichte im Dezember 2009 sehr zur Verbesserung beigetragen.
Meiner Meinung nach macht es daher keinen Sinn, "Lesbarkeit macht es so" zu sagen, ohne die genaue Versionsnummer zu erwähnen.
Ich habe eine Open Source-Bibliothek zur Extraktion von HTML-Inhalten namens boilerpipe veröffentlicht , die verschiedene Extraktionsstrategien bietet. Je nach Anwendungsfall funktioniert der eine oder andere Extraktor besser. Sie können diese Extraktoren auf Seiten Ihrer Wahl mit der begleitenden Boilerpipe-Web-App in Google AppEngine testen.
Informationen zum Sprechen von Zahlen finden Sie auf der Seite " Benchmarks " im Boilerpipe-Wiki, auf der einige Extraktionsstrategien verglichen werden, darunter Boilerpipe, Lesbarkeit und Apple Safari.
Ich sollte erwähnen, dass diese Algorithmen davon ausgehen, dass der Hauptinhalt tatsächlich Volltext ist. Es gibt Fälle, in denen der "Hauptinhalt" etwas anderes ist, z. B. ein Bild, eine Tabelle, ein Video usw. Die Algorithmen funktionieren in solchen Fällen nicht gut.
Prost,
Christian