Der reguläre Abgleich wird normalerweise beim Crawlen des Webinhalts einer einzelnen Website verwendet. Die Strukturen verschiedener Websites sind jedoch so seltsam, dass es schwierig ist, sie mit einem einheitlichen regulären Ausdruck abzugleichen. Der Autor von „General Web Page Text Extraction Algorithm Based on Line Block Distribution Function“ fasste die allgemeinen Methoden zum Extrahieren von Artikeltext aus Webseiten zusammen, schlug einen Textextraktionsalgorithmus basierend auf der Zeilenblockverteilung vor und stellte Implementierungen in PHP, Java usw. bereit. Die Hauptprinzipien dieses Algorithmus basieren auf zwei Punkten: 1. Textbereichsdichte: Nach dem Entfernen aller Tags in HTML ist die Zeichendichte im Textbereich höher und es gibt weniger Mehrfachzeilen mit Leerzeichen. 2. Zeilenblocklänge: die Der Inhalt in Nichttextbereichen ist durchschnittlich kürzer in einzelnen Beschriftungen (Zeilenblöcken). Die Algorithmusschritte lauten wie folgt:
1. Entfernen Sie alle Tags, einschließlich Stile, Js-Skriptinhalte usw., behalten Sie jedoch die ursprünglichen Zeilenumbrüche n bei
2. Der Inhalt der Webseite wird durch Zeilen unterteilt. Definieren Sie den Zeilenblock $block_i$ als Summe der Textzeilen $[i, i + blockSize]$ und geben Sie die Verteilungsfunktion der Zeilenblocklänge an die Zeilennummer:
3 Der Text erscheint im längsten Zeilenblock und der Bereich von beiden Seiten bis zur Zeilenblocklänge von 0 wird abgefangen:
4 Wenn Sie die im Textbereich angezeigten Bilder extrahieren müssen, müssen Sie sie nur behalten der Inhalt des -Tags beim Entfernen des Tags im ersten Schritt:
Das Obige ist der Inhalt von [python Tutorial] Algorithmus zum Extrahieren von Webseitentext und Inhaltsbildern. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!