mirror of
				https://github.com/searxng/searxng.git
				synced 2025-11-02 18:47:05 -05:00 
			
		
		
		
	Merge pull request #849 from kvch/ddg-paging-fix
fix paging of duckduckgo
This commit is contained in:
		
						commit
						e389a0c721
					
				@ -27,7 +27,7 @@ supported_languages_url = 'https://duckduckgo.com/d2030.js'
 | 
				
			|||||||
time_range_support = True
 | 
					time_range_support = True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# search-url
 | 
					# search-url
 | 
				
			||||||
url = 'https://duckduckgo.com/html?{query}&s={offset}'
 | 
					url = 'https://duckduckgo.com/html?{query}&s={offset}&api=/d.js&o=json&dc={dc_param}'
 | 
				
			||||||
time_range_url = '&df={range}'
 | 
					time_range_url = '&df={range}'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
time_range_dict = {'day': 'd',
 | 
					time_range_dict = {'day': 'd',
 | 
				
			||||||
@ -46,7 +46,8 @@ def request(query, params):
 | 
				
			|||||||
    if params['time_range'] and params['time_range'] not in time_range_dict:
 | 
					    if params['time_range'] and params['time_range'] not in time_range_dict:
 | 
				
			||||||
        return params
 | 
					        return params
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    offset = (params['pageno'] - 1) * 30
 | 
					    offset = 30 + (params['pageno'] - 1) * 50
 | 
				
			||||||
 | 
					    dc_param = offset + 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # custom fixes for languages
 | 
					    # custom fixes for languages
 | 
				
			||||||
    if params['language'] == 'all':
 | 
					    if params['language'] == 'all':
 | 
				
			||||||
@ -79,10 +80,10 @@ def request(query, params):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    if locale:
 | 
					    if locale:
 | 
				
			||||||
        params['url'] = url.format(
 | 
					        params['url'] = url.format(
 | 
				
			||||||
            query=urlencode({'q': query, 'kl': locale}), offset=offset)
 | 
					            query=urlencode({'q': query, 'kl': locale}), offset=offset, dc_param=dc_param)
 | 
				
			||||||
    else:
 | 
					    else:
 | 
				
			||||||
        params['url'] = url.format(
 | 
					        params['url'] = url.format(
 | 
				
			||||||
            query=urlencode({'q': query}), offset=offset)
 | 
					            query=urlencode({'q': query}), offset=offset, dc_param=dc_param)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if params['time_range'] in time_range_dict:
 | 
					    if params['time_range'] in time_range_dict:
 | 
				
			||||||
        params['url'] += time_range_url.format(range=time_range_dict[params['time_range']])
 | 
					        params['url'] += time_range_url.format(range=time_range_dict[params['time_range']])
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user