BeautifulSoupまたはlxmlを使用できない場合、HTMLを解析するための最善策は何ですか? SGMLlibを使用するコードをいくつか持っていますが、それは少し低レベルであり、現在は非推奨です。
ほとんどの入力はかなりクリーンであると確信していますが、少し不正な形式のHTMLに腹を立てることができると思います。
Pythonには ネイティブHTMLパーサー がありますが、Nickが提案したTidyラッパーもおそらく確かな選択になるでしょう。 Tidyは非常に一般的なライブラリです(Cで書かれていますか?)
Lxmlと他の多くのpythonモジュールをMac(OS X)にPalletを使用して簡単かつシームレスにインストールできます MacPorts公式GUI
モジュール名はpy27-lxmlです。 1、2、3のように簡単です。
おそらく µTidylib はあなたのニーズを満たしますか?
html5libは良いです:
http://code.google.com/p/html5lib/
更新:上記のリンクが壊れています。上記のサードパーティのミラーは、 https://github.com/html5lib/gcode-import からアクセスできます
htqlは不正なHTMLの処理に優れています。
http://www.xmlhack.com/read.php?item=1392http://sourceforge.net/projects/pirxx/
http://pyxml.sourceforge.net/topics/
私はpythonの経験があまりありませんが、過去に(Apache財団の)Xercesを使用していて、非常に便利であることがわかりました。 pythonの観点からではありませんが、学習曲線も悪くありません。ただし、それを検討することをお勧めします。(最初に含めた2つのリンクは、pythonはXercesへのインターフェースであり、最後のものは「python xml」での最初のgoogleヒットです)。