CSVにはWeb上で公開されている読み仮名などの情報が無いので、各著者、作品毎に青空文庫をスクレイピングして情報を追加した。読み仮名はソートで必要になるし、生誕日がわかれば「今日はどの作家の誕生日」というトピックでお勧め作品のリストアップができる。没年月日も取り込んだけど、これは使わないだろうな。
スクレイピングは、当初はBeautifulSoupを使っていたが、パースエラーが時々起きる上に、回避手段としてblog等に載っているhtml5libを使う手段が実はhtml5lib側で拒絶されてる事がわかり、lxmlを使う方法に改めた。結果、回りくどいやり方で取り出していた文字列がXPathを使って一発でできるようになり、パースエラー回避以外にもメリットがあった。lxmlはGAE上では使えないようだが、あちらではスクレイピングはしないだろう。
0 件のコメント:
コメントを投稿