summaryrefslogtreecommitdiff
path: root/searx/engines/soundcloud.py
diff options
context:
space:
mode:
authorasciimoo <asciimoo@gmail.com>2013-10-17 21:21:23 +0200
committerasciimoo <asciimoo@gmail.com>2013-10-17 21:21:23 +0200
commitb91538645647584fa152629c622d4e9207285125 (patch)
treed11af3325fee951304068799c4ba215cf7172f9b /searx/engines/soundcloud.py
parentb5a5f450b5230816c63f71db538eccba5a0e85e2 (diff)
downloadsearxng-b91538645647584fa152629c622d4e9207285125.tar.gz
searxng-b91538645647584fa152629c622d4e9207285125.zip
[enh] soundcloud search added
Diffstat (limited to 'searx/engines/soundcloud.py')
-rw-r--r--searx/engines/soundcloud.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/searx/engines/soundcloud.py b/searx/engines/soundcloud.py
new file mode 100644
index 000000000..5761d81c5
--- /dev/null
+++ b/searx/engines/soundcloud.py
@@ -0,0 +1,23 @@
+from json import loads
+
+categories = ['music']
+
+guest_client_id = 'b45b1aa10f1ac2941910a7f0d10f8e28'
+search_url = 'https://api.soundcloud.com/search?q=%s&facet=model&limit=10&offset=0&linked_partitioning=1&client_id='+guest_client_id
+
+def request(query, params):
+ global search_url
+ params['url'] = search_url % query
+ return params
+
+
+def response(resp):
+ global base_url
+ results = []
+ search_res = loads(resp.text)
+ for result in search_res.get('collection', []):
+ if result['kind'] == 'track':
+ title = result['title']
+ content = result['description']
+ results.append({'url': result['permalink_url'], 'title': title, 'content': content})
+ return results