Pythonで、BlogやニュースのWEBページから、本文領域のHTMLを抽出するツール
extbody -- Blog&News本文領域抽出ツール
を作りましたので公開します。
いつものごとくα版です。(そろそろいいかげんに、ひとつひとつきっちりと作ったほうがいいよね。)
以前から、他のアプリの一部として使っていたものを分離してモジュールにまとめたものです。
* 正解率8割程度。(2ch抜粋系blogにはめっぽう弱いです。)
* 日英対応。
です。
中身は試行錯誤が複雑にからまった呪文のようなソースになっておりますことをご了承ください。
最初はPython標準のHTMLパーサーや、有名なBeautifulSoupを使ってましたが、時折解析できないHTMLがありましたので、結局自筆の正規表現で解析しています。
おおざっぱにtableタグとdivタグぐらいの対応が少なくとも合っているソースであれば解析できます。
本文領域決定の計算は、なかなかむずかしく、残り2割を正解にするのは超むずかしいところです。
アルファ版とか言ってますが、次はひとまずソースの整理をせねばなりません。