仕事でfeedaggregatorを作る必要があって、家でやるならplaggerでいいじゃんとか思うんだけど、職場でそれやっちゃうとメンテナンスできるヒトがいなくなっちゃって困るし、インストールも時間がかかるので、requestsとfeedparserでちゃっちゃと作ることにした。
実は非同期のクローラーが作ってみたくかったので、Tornadoでつくったのもあるんだけど、サイトアクセスのタイミングがよく分からないのと、最初はそれほど多くのサイトにアクセスしそうにないので同期型のクローラーを動かすことにした次第。
feedparserでparseするとupdate_parsedとかpublished_parsedはtime.struct_time型になるのでwerkzeug.contrib.atomに食わせるにはdatetime型に変換する必要がある。
この場合にはfromtimestampメソッドを使えばいい。
updated=datetime.fromtimestamp(mktime(e.updated_parsed))
時間の変換は結構めんどくさいね。