File size: 756 Bytes
7992c94 7b58f25 7992c94 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
import requests
from dotenv import load_dotenv
import os
load_dotenv()
base_url = "https://api.pexels.com/v1"
api_key = os.getenv("API_KEY_PEXELS")
def get_random_image(topic: str) -> tuple[str, str] | tuple[None, None]:
# Returns the url of a random image on a topic
params = {"query": topic, "per_page": 1}
headers = {"Authorization": api_key}
response = requests.get(url=f"{base_url}/search", params=params, headers=headers)
response_json = response.json()
if response.status_code != 200:
return None, None
try:
photo = response_json["photos"][0]
landscape_url = photo["src"]["landscape"]
alt = photo["alt"]
except:
landscape_url, alt = None, None
return landscape_url, alt
|