@@ -1,16 +1,17 @@
1from urllib import urlencode
1from urllib import urlencode
2from json import loads
3from json import loads
3from cgi import escape
4from cgi import escape
5categories = ['videos']
6categories = ['videos']
6−localization = 'en'
7+locale = 'en_US'
8# see http://www.dailymotion.com/doc/api/obj-video.html
9# see http://www.dailymotion.com/doc/api/obj-video.html
9search_url = 'https://api.dailymotion.com/videos?fields=title,description,duration,url,thumbnail_360_url&sort=relevance&limit=25&page=1&{query}'
10search_url = 'https://api.dailymotion.com/videos?fields=title,description,duration,url,thumbnail_360_url&sort=relevance&limit=25&page=1&{query}'
11def request(query, params):
12def request(query, params):
12 global search_url
13 global search_url
13− params['url'] = search_url.format(query=urlencode({'search': query, 'localization': localization }))
14+ params['url'] = search_url.format(query=urlencode({'search': query, 'localization': locale }))
14 return params
15 return params
@@ -27,6 +28,11 @@ def response(resp):
28 content = ''
29 content = ''
29 if res['description']:
30 if res['description']:
31+ description = text_content_from_html(res['description'])
30− content += escape(res['description'][:500])
32+ content += description[:500]
31 results.append({'url': url, 'title': title, 'content': content})
33 results.append({'url': url, 'title': title, 'content': content})
32 return results
34 return results
36+def text_content_from_html(html_string):
37+ desc_html = html.fragment_fromstring(html_string, create_parent=True)
38+ return desc_html.text_content()