1. 網頁正文及內容圖片提取演算法
備份自: http://blog.rainy.im/2015/09/02/web-content-and-main-image-extractor/
問題: 如何提取任意(尤其是新聞、資訊類)網頁的正文內容,提取與文章內容相關的圖片,源碼可見: extractor.py 。
抓取單個網站網頁內容時通常採用正則匹配的方式,但不同網站之間結構千奇百怪,很難用統一的正則表達式進行匹配。 《基於行塊分布函數的通用網頁正文抽取演算法》 的作者總結了一般從網頁中提取文章正文的方法,提出基於行塊分布的正文抽取演算法,並給出了 PHP 、Java 等實現。這一演算法的主要原理基於兩點:
演算法步驟如下:
以上演算法基本可以應對大部分(中文)網頁正文的提取,針對有些網站正文圖片多於文字的情況,可以採用保留 <img> 標簽中圖片鏈接的方法,增加正文密度。目前少量測試發現的問題有:1)文章分頁或動態載入的網頁;2)評論長度過長喧賓奪主的網頁。