@@ -8,6 +8,14 @@ content_query = None
8title_query = None
8title_query = None
9# suggestion_xpath = ''
9# suggestion_xpath = ''
11+# parameters for engines with paging support
13+# number of results on each page
14+# (only needed if the site requires not a page number, but an offset)
16+# number of the first page (usually 0 or 1)
12def iterate(iterable):
20def iterate(iterable):
13 if type(iterable) == dict:
21 if type(iterable) == dict:
@@ -69,8 +77,14 @@ def query(data, query_string):
70def request(query, params):
78def request(query, params):
71 query = urlencode({'q': query})[2:]
79 query = urlencode({'q': query})[2:]
81+ fp = {'query': query}
82+ if paging and search_url.find('{pageno}') >= 0:
83+ fp['pageno'] = (params['pageno'] + first_page_num - 1) * page_size
72− params['url'] = search_url.format(query=query)
85+ params['url'] = search_url.format(**fp)
73 params['query'] = query
86 params['query'] = query
74 return params
88 return params