20 lines
557 B
Python
20 lines
557 B
Python
import requests
|
|
from django.conf import settings
|
|
|
|
_BASE = 'https://perenual.com/api'
|
|
|
|
|
|
def search_species(query):
|
|
"""Query Perenual species-list endpoint. Returns list of result dicts or [] on any error."""
|
|
if not settings.PERENUAL_API_KEY:
|
|
return []
|
|
try:
|
|
resp = requests.get(
|
|
f'{_BASE}/species-list',
|
|
params={'q': query, 'key': settings.PERENUAL_API_KEY},
|
|
timeout=5,
|
|
)
|
|
resp.raise_for_status()
|
|
return resp.json().get('data', [])
|
|
except Exception:
|
|
return []
|