| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 | ## Dailymotion (Videos)# # @website     https://www.dailymotion.com# @provide-api yes (http://www.dailymotion.com/developer)# # @using-api   yes# @results     JSON# @stable      yes# @parse       url, title, thumbnail## @todo        set content-parameter with correct datafrom urllib import urlencodefrom json import loadsfrom lxml import html# engine dependent configcategories = ['videos']paging = Truelanguage_support = True# search-url# see http://www.dailymotion.com/doc/api/obj-video.htmlsearch_url = 'https://api.dailymotion.com/videos?fields=title,description,duration,url,thumbnail_360_url&sort=relevance&limit=5&page={pageno}&{query}'  # noqa# do search-requestdef request(query, params):    if params['language'] == 'all':        locale = 'en-US'    else:        locale = params['language']    params['url'] = search_url.format(        query=urlencode({'search': query, 'localization': locale}),        pageno=params['pageno'])    return params# get response from search-requestdef response(resp):    results = []    search_res = loads(resp.text)    # return empty array if there are no results    if not 'list' in search_res:        return []    # parse results    for res in search_res['list']:        title = res['title']        url = res['url']        #content = res['description']        content = ''        thumbnail = res['thumbnail_360_url']        results.append({'template': 'videos.html',                        'url': url,                        'title': title,                        'content': content,                        'thumbnail': thumbnail})    # return results    return results
 |