From dd712255a38cb8fb47eda44a4e9928a6136e6cf2 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 24 Jun 2012 08:22:38 +0530 Subject: [PATCH] Marketing Sensoriale by NotTaken --- recipes/marketing_sensoriale.recipe | 56 +++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 recipes/marketing_sensoriale.recipe diff --git a/recipes/marketing_sensoriale.recipe b/recipes/marketing_sensoriale.recipe new file mode 100644 index 0000000000..214e0ea1b1 --- /dev/null +++ b/recipes/marketing_sensoriale.recipe @@ -0,0 +1,56 @@ +from calibre.web.feeds.news import BasicNewsRecipe +from calibre.utils.ipc.simple_worker import fork_job +from calibre.ptempfile import PersistentTemporaryFile + +js_fetcher = ''' + +import calibre.web.jsbrowser.browser as jsbrowser + +def grab(url): + browser = jsbrowser.Browser() + #10 second timeout + browser.visit(url, 10) + browser.run_for_a_time(10) + html = browser.html + browser.close() + return html + + ''' +class MarketingSensoriale(BasicNewsRecipe): + + title = u'Marketing sensoriale' + __author__ = 'NotTaken' + description = 'Marketing Sensoriale, il Blog' + category = 'Blog' + oldest_article = 7 + max_articles_per_feed = 200 + no_stylesheets = True + encoding = 'utf8' + use_embedded_content = False + language = 'it' + remove_empty_feeds = True + recursions = 0 + requires_version = (0, 8, 58) + auto_cleanup = False + simultaneous_downloads = 1 + articles_are_obfuscated = True + + remove_tags_after = [dict(name='div', attrs={'class':['article-footer']})] + + + def get_article_url(self, article): + return article.get('feedburner_origlink', None) + + def get_obfuscated_article(self, url): + result = fork_job(js_fetcher, 'grab', (url,), module_is_source_code=True) + + html = result['result'] + if isinstance(html, type(u'')): + html = html.encode('utf-8') + pt = PersistentTemporaryFile('.html') + pt.write(html) + pt.close() + return pt.name + + feeds = [(u'Marketing sensoriale', u'http://feeds.feedburner.com/MarketingSensoriale?format=xml')] +