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