import requests
from pprint import pprint

API_KEY = "01b23f521404b8d4b2a93e4ad03255ca"

def check_coordinates(city, API_KEY):
    response = requests.get(f"http://api.openweathermap.org/geo/1.0/direct?q={city}&appid={API_KEY}")
    print(response.status_code)
    # pprint(response.json())
    lat = response.json()[0]["lat"]
    lon = response.json()[0]["lon"]
    city = response.json()[0]["name"]
    country = response.json()[0]["country"]
    return lat, lon, city, country


def get_wether_info(lat,lon):
    response = requests.get(f"https://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&appid={API_KEY}")
    response_json = response.json()
    weather = response_json["weather"][0]["description"]
    temperature = response_json["main"]["temp"]
    pressure = response_json["main"]["pressure"]
    humidity = response_json["main"]["humidity"]
    return weather, temperature, pressure, humidity


print("Witaj w Travelinator")
origin_city = input("Podaj miasto z którego podróżujesz: ")
destination_city = input("Podaj miasto, do którego się wybierasz: ")

check_coordinates(origin_city,API_KEY)
check_coordinates(destination_city,API_KEY)

origin_lat, origin_lon, origin_city, origin_country = check_coordinates(origin_city, API_KEY)
dest_lat, dest_lon, dest_city, dest_country = check_coordinates(destination_city, API_KEY)

print(f"Miasto, z którego podróżujesz: {origin_city}")
print(f"Miasto, do którego podróżujesz: {dest_city}")
print(f"Jego współrzędne geograficzne to: n\{dest_lat} szerokości geograficznej \n{dest_lon}")
weather, temperature, pressure, humidity = get_wether_info(dest_lat,dest_lon)
print(f"Pogoda: {weather}")
print(f"Temperatura: {temperature}")
print(f"Wigotność: {humidity}")
print(f"Ciśnienie: {pressure}")