BeautifulSoupというかHTMLParserがエラーを吐く問題

よく見るこういうの

HTMLParser.HTMLParseError: malformed start tag, at line 265, column 27

ちょっと調べてみると「複雑なHTMLだと吐く」って曖昧な感じだったので、更に深く調べてみると、公式のバグトラックに行き着く。HTMLParserは標準ライブラリだからね。
Issue 670664: HTMLParser.py - more robust SCRIPT tag parsing - Python tracker
結局、HTMLParserのソースをざっと追った時の、SCRIPTタグ周りの処理が問題らしい。問題とは言うものの、仕様と実際のあれこれでどちらとも直せない感じらしい。

で、一応パッチがおいてあるのでそれを当てる
http://bugs.python.org/file21046/cdata_patch.diff

cp /usr/lib/python2.6/HTMLParser.py .
patch HTMLParser.py < cdata_patch.diff

こんな感じでローカル(?)のディレクトリに置いておけば、BeautifulSoupから手近な(パッチ済み)のをimportしてくれる優先順位らしい。

というわけで、それで何とか動いてます。