diff options
Diffstat (limited to 'searx')
| -rw-r--r-- | searx/engines/openstreetmap.py | 47 | ||||
| -rw-r--r-- | searx/settings.yml | 14 |
2 files changed, 56 insertions, 5 deletions
diff --git a/searx/engines/openstreetmap.py b/searx/engines/openstreetmap.py new file mode 100644 index 000000000..ea7251486 --- /dev/null +++ b/searx/engines/openstreetmap.py @@ -0,0 +1,47 @@ +## OpenStreetMap (Map) +# +# @website https://openstreetmap.org/ +# @provide-api yes (http://wiki.openstreetmap.org/wiki/Nominatim) +# +# @using-api yes +# @results JSON +# @stable yes +# @parse url, title + +from json import loads + +# engine dependent config +categories = ['map'] +paging = False + +# search-url +url = 'https://nominatim.openstreetmap.org/search/{query}?format=json' + +result_base_url = 'https://openstreetmap.org/{osm_type}/{osm_id}' + + +# do search-request +def request(query, params): + params['url'] = url.format(query=query) + + return params + + +# get response from search-request +def response(resp): + results = [] + json = loads(resp.text) + + # parse results + for r in json: + title = r['display_name'] + osm_type = r.get('osm_type', r.get('type')) + url = result_base_url.format(osm_type=osm_type, + osm_id=r['osm_id']) + # append result + results.append({'title': title, + 'content': '', + 'url': url}) + + # return results + return results diff --git a/searx/settings.yml b/searx/settings.yml index c2d6f28a8..da053ce6a 100644 --- a/searx/settings.yml +++ b/searx/settings.yml @@ -1,12 +1,12 @@ server: port : 8888 secret_key : "ultrasecretkey" # change this! - debug : False + debug : False # Debug mode, only for development request_timeout : 2.0 # seconds - base_url : False - themes_path : "" - default_theme : default - https_rewrite : True + base_url : False # Set custom base_url. Possible values: False or "https://your.custom.host/location/" + themes_path : "" # Custom ui themes path + default_theme : default # ui theme + https_rewrite : True # Force rewrite result urls. See searx/https_rewrite.py engines: - name : wikipedia @@ -80,6 +80,10 @@ engines: engine : google_news shortcut : gon + - name : openstreetmap + engine : openstreetmap + shortcut : osm + - name : piratebay engine : piratebay shortcut : tpb |