BeautifulSoupを使う時にはまったこと
BeautifulSoupですが、色々さわっていて
わかったことがあります。
"<IMG class=pict height=150 alt=画像.jpg hspace=5 src="http://hogehoge.jpg" width=180 align=left border=2>"
こんなタグがあったときにすんなり解析できそうですが、
alt以降がパースされず、スクレイピングできないようです。
これを解析してもらうには、alt="画像.jpg"とする必要があるようです。
これはコードにパッチ当てるしかないかもしれません・・・
しかも出力する際に、
元の文字コードがShift-jisの時、
sys.setdefaultencoding("shift-jis") for x in soup.findAll('img'): print x['src']
としないと正しく表示されません。
sys.setdefaultencodingは、encodeする際の
デフォルトエンコードを指し、指定しない場合は、asciiとして解釈してしまうので、
??????として表示されます。
意外と日本語を扱うのは、面倒な設定だなという感じです。