NORA

雑食気味なひよっこプログラミング記録

今日やったこと。

今日はRSSやATOMといったフィードから単語のリストを取り出す部分を書いた。といっても本書では英単語を対象にしたものだったので巻末付録にもあったBeautifulSoupを用いた日本語向けのコードに変更。その際にBeautifulSoupのドキュメントを読んでいて気になったことがある。

BeautifulSoupではタグ間のテキストはNavigableStringオブジェクトとして扱われているそうです。

text = tag.string

これでテキストは取得出来ますが、このままだとBeautifulSoupのパースツリー全体への参照を持ったままなので処理が終わった後でもメモリを大量に消費してしまうとのこと。なので、

text = unicode(tag.string)

のように、PythonUnicode文字列に変換してから取得するように気をつけないそうです。巻末付録に書いてあったコードにはunicode()処理がされていなかったのがちょっと気になりました。