4from urllib.parse
import urlencode, urlparse, urlunparse, parse_qsl
63 global __CACHED_API_KEY
66 return __CACHED_API_KEY
68 resp = get(pdia_search_url)
69 if resp.status_code != 200:
70 raise LookupError(
"Failed to fetch config location (and as such the API key) for PDImageArchive")
71 pdia_config_filepart = extr(resp.text, pdia_config_start, pdia_config_end)
72 pdia_config_url = pdia_base_url + pdia_config_start + pdia_config_filepart + pdia_config_end
74 resp = get(pdia_config_url)
75 if resp.status_code != 200:
76 raise LookupError(
"Failed to obtain Algolia API key for PDImageArchive")
78 api_key = extr(resp.text,
'const r="',
'"', default=
None)
81 raise LookupError(
"Couldn't obtain Algolia API key for PDImageArchive")
83 __CACHED_API_KEY = api_key