# -*- mode: python -*- # -*- coding: utf-8 -*- __license__ = 'GPL v3' __copyright__ = '2018, Darko Miletic ' ''' www.computing.co.uk ''' from calibre.web.feeds.news import BasicNewsRecipe class Computing_UK(BasicNewsRecipe): title = 'Computing' __author__ = 'Darko Miletic' description = 'Computing is the leading information resource for UK technology decision makers, providing the latest market news and hard-hitting opinion.' publisher = 'Incisive Business Media Limited' category = 'it computing uk, computing events, big data summit, cloud and infrastructure, it devops, computing security, HP, intel' oldest_article = 7 no_stylesheets = True encoding = 'utf8' use_embedded_content = False language = 'en_GB' remove_empty_feeds = True publication_type = 'newsportal' auto_cleanup = True resolve_internal_links = True needs_subscription = True ignore_duplicate_articles = {'url'} INDEX = 'https://www.computing.co.uk/' LOGIN = 'https://www.computing.co.uk/userlogin' def get_browser(self): def is_form_login(form): return "id" in form.attrs and form.attrs['id'] == "userlogin" br = BasicNewsRecipe.get_browser(self) br.open(self.INDEX) if self.username: br.open(self.LOGIN) br.select_form(predicate=is_form_login) br['subscriber[email_id]'] = self.username br['subscriber[password]'] = self.password br.submit() return br extra_css = """ body{font-family: sans-serif} img{margin-top:1em; margin-bottom: 1em; display:block} """ conversion_options = { 'comment': description, 'tags': category, 'publisher': publisher, 'language': language } feeds = [ ( u'Financial Solutions', u'https://www.computing.co.uk/feeds/rss/category/financial-solutions/' ), ( u'Big Data', u'https://www.computing.co.uk/feeds/rss/category/big-data-and-analytics/' ), (u'DevOps', u'https://www.computing.co.uk/feeds/rss/category/devops/'), ( u'Cloud and Infrastructure', u'https://www.computing.co.uk/feeds/rss/category/cloud-and-infrastructure/' ), ( u'Internet of Things', u'https://www.computing.co.uk/feeds/rss/category/internet-of-things/' ), ( u'Leadership', u'https://www.computing.co.uk/feeds/rss/category/leadership/' ), ( u'Application', u'https://www.computing.co.uk/feeds/rss/category/software/applications/' ), ( u'Business Software', u'https://www.computing.co.uk/feeds/rss/category/software/business-software/' ), ( u'Developer', u'https://www.computing.co.uk/feeds/rss/category/software/developer/' ), ( u'Mobile Software', u'https://www.computing.co.uk/feeds/rss/category/software/mobile-software/' ), (u'Strategy', u'https://www.computing.co.uk/feeds/rss/category/strategy/'), ( u'Corporate', u'https://www.computing.co.uk/feeds/rss/category/management/corporate/' ), ( u'Privacy', u'https://www.computing.co.uk/feeds/rss/category/security/privacy/' ), (u'Security', u'https://www.computing.co.uk/feeds/rss/category/security/'), (u'Hardware', u'https://www.computing.co.uk/feeds/rss/category/hardware/'), ( u'Mobile Phones', u'https://www.computing.co.uk/feeds/rss/category/hardware/mobile-phones/' ), ( u'Communications', u'https://www.computing.co.uk/feeds/rss/category/communications/' ), ( u'Public Sector', u'https://www.computing.co.uk/feeds/rss/category/public-sector/' ), (u'Security', u'https://www.computing.co.uk/feeds/rss/category/security/'), (u'Security', u'https://www.computing.co.uk/feeds/rss/category/security/'), ]