| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | # SPDX-License-Identifier: AGPL-3.0-or-later""" Openverse (formerly known as: Creative Commons search engine) [Images]"""from json import loadsfrom urllib.parse import urlencodeabout = {    "website": 'https://wordpress.org/openverse/',    "wikidata_id": None,    "official_api_documentation": 'https://api.openverse.engineering/v1/',    "use_official_api": True,    "require_api_key": False,    "results": 'JSON',}categories = ['images']paging = Truenb_per_page = 20base_url = 'https://api.openverse.engineering/v1/images/'search_string = '?page={page}&page_size={nb_per_page}&format=json&{query}'def request(query, params):    search_path = search_string.format(query=urlencode({'q': query}), nb_per_page=nb_per_page, page=params['pageno'])    params['url'] = base_url + search_path    return paramsdef response(resp):    results = []    json_data = loads(resp.text)    for result in json_data['results']:        results.append(            {                'url': result['foreign_landing_url'],                'title': result['title'],                'img_src': result['url'],                'template': 'images.html',            }        )    return results
 |