{"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fsouta-bot.hatenadiary.org%2Fentry%2F20090204%2F1233764053\" title=\"GoogleAppEngine\u518d\u5165\u9580(4) -RSS Reader\u3092\u4f5c\u308b- - souta-bot log\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","title":"GoogleAppEngine\u518d\u5165\u9580(4) -RSS Reader\u3092\u4f5c\u308b-","width":"100%","image_url":"https://cdn-ak.f.st-hatena.com/images/fotolife/s/souta-bot/20090204/20090204233356.png","url":"https://souta-bot.hatenadiary.org/entry/20090204/1233764053","categories":["python","GAE"],"blog_url":"https://souta-bot.hatenadiary.org/","height":"190","type":"rich","provider_name":"Hatena Blog","version":"1.0","published":"2009-02-04 01:14:13","blog_title":"souta-bot log","author_url":"https://blog.hatena.ne.jp/souta-bot/","author_name":"souta-bot","provider_url":"https://hatena.blog","description":"\u524d\u56de\uff1aGoogleAppEngine\u518d\u5165\u9580(3) -Datastore API 2- - souta-bot log \u65e5\u7d4c\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2200901\u53f7\u306ePart3\u306b\u7fd2\u3044\u7c21\u6613RSS Reader\u3092\u4f5c\u308b\uff01 feedparser.py(http://code.google.com/p/feedparser/downloads/list)\u3092\u4f7f\u7528 RSS\u30a2\u30a4\u30b3\u30f3\u3092\u3053\u3053\u304b\u3089\u5165\u624b \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u69cb\u6210\u306f\u3053\u3093\u306a\u611f\u3058\u306b\u3059\u308b -hoge-reader/ |-main.py(\u30d7\u30ed\u30b0\u30e9\u30e0\u672c\u4f53) |-app.yaml |-feedparser.py |-templates.py(\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb) |-index.yam\u2026"}