From 7d5e556507661267662a02fed28da27f2c4bb184 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 11 Jun 2013 12:52:53 +0530 Subject: [PATCH] jsnews: Fix delay and timeout parameters unused --- src/calibre/web/feeds/jsnews.py | 3 ++- src/calibre/web/fetch/javascript.py | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/calibre/web/feeds/jsnews.py b/src/calibre/web/feeds/jsnews.py index 406c140ba7..1bf1faa321 100644 --- a/src/calibre/web/feeds/jsnews.py +++ b/src/calibre/web/feeds/jsnews.py @@ -115,7 +115,7 @@ class JavascriptRecipe(BasicNewsRecipe): Override this method in your recipe if you want to use a non-standard Browser object. ''' from calibre.web.jsbrowser.browser import Browser - return Browser(default_timeout=kwargs.get('default_timeout', 120)) + return Browser(default_timeout=kwargs.get('default_timeout', self.timeout)) def do_login(self, browser, username, password): ''' @@ -375,6 +375,7 @@ class JavascriptRecipe(BasicNewsRecipe): remove_before=self.remove_tags_before, remove_after=self.remove_tags_after, remove_javascript=self.remove_javascript, + delay=self.delay, resource_cache=resource_cache, output_dir=art_dir, browser=browser) except AbortFetch: self.log.exception('Fetching of article: %r aborted' % article.title) diff --git a/src/calibre/web/fetch/javascript.py b/src/calibre/web/fetch/javascript.py index 7f6c5f368d..5f1d894a97 100644 --- a/src/calibre/web/fetch/javascript.py +++ b/src/calibre/web/fetch/javascript.py @@ -197,6 +197,7 @@ def fetch_page( remove_before=None, remove=(), remove_javascript=True, + delay=0, preprocess_browser=lambda browser, url, stage, recursion_level:None, postprocess_html=lambda root, url, recursion_level: root, resource_cache={}, @@ -209,6 +210,9 @@ def fetch_page( if browser is None: browser = jsbrowser() + if delay: + time.sleep(delay) + # Load the DOM if url is not None: start_time = time.time() @@ -241,7 +245,7 @@ def fetch_page( curl, load_complete=load_complete, links=links, keep_only=keep_only, remove_after=remove_after, remove_before=remove_before, remove=remove, preprocess_browser=preprocess_browser, postprocess_html=postprocess_html, - resource_cache=resource_cache, output_dir=odir, browser=browser, + resource_cache=resource_cache, output_dir=odir, browser=browser, delay=delay, recursion_level=recursion_level+1)) except AbortFetch: continue