from calibre.web.feeds.news import BasicNewsRecipe class NBOnline(BasicNewsRecipe): title = u'Nikkei Business Online' language = 'ja' description = u'Nikkei Business Online.\u6CE8\uFF1A\u30E6\u30FC\u30B6\u30FC\u540D\u306Bemail\u30A2\u30C9\u30EC\u30B9\u3068\u30E6\u30FC\u30B6\u30FC\u540D\u3092\u30BB\u30DF\u30B3\u30ED\u30F3\u3067\u533A\u5207\u3063\u3066\u5165\u308C\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B\uFF1Aemail@address.jp;username . PLEASE NOTE: You need to put your email address and username into username filed separeted by ; (semi-colon).' # noqa __author__ = 'Ado Nishimura' needs_subscription = True oldest_article = 7 max_articles_per_feed = 100 remove_tags_before = dict(id='kanban') remove_tags = [dict(name='div', id='footer')] feeds = [('Nikkei Buisiness Online', 'http://business.nikkeibp.co.jp/rss/all_nbo.rdf')] def get_cover_url(self): return 'http://business.nikkeibp.co.jp/images/nbo/200804/parts/logo.gif' def get_browser(self): br = BasicNewsRecipe.get_browser(self) if self.username is not None and self.password is not None: br.open('https://signon.nikkeibp.co.jp/front/login/?ct=p&ts=nbo') br.select_form(name='loginActionForm') br['email'] = self.username.split(';')[0] br['userId'] = self.username.split(';')[1] br['password'] = self.password br.submit() return br def print_version(self, url): return url + '?ST=print'