Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import tkinter as tk
- import requests
- # Initialize the window
- window = tk.Tk()
- window.title("Weather Application")
- # Variable
- YOUR_API_KEY = "PUT YOUR API KEY FOR OPENWEATHERMAP HERE"
- # Function to fetch weather information
- def get_weather():
- city = entry.get()
- if city:
- url = f"http://api.openweathermap.org/data/2.5/weather?q={city}&appid={YOUR_API_KEY}"
- try:
- response = requests.get(url)
- weather_data = response.json()
- if weather_data["cod"] == 200:
- weather_info = weather_data["weather"][0]["description"]
- temperature = weather_data["main"]["temp"]
- temperature = round(temperature - 273.15, 2) # Convert to Celsius
- humidity = weather_data["main"]["humidity"]
- result_label.config(text=f"Weather: {weather_info}\nTemperature: {temperature} °C\nHumidity: {humidity}%")
- else:
- result_label.config(text="City not found")
- except requests.exceptions.RequestException:
- result_label.config(text="Failed to fetch weather data")
- else:
- result_label.config(text="Please enter a city")
- # Entry widget to input city
- entry = tk.Entry(window, width=30)
- entry.grid(row=0, column=0, padx=10, pady=10)
- # Button to fetch weather
- weather_button = tk.Button(window, text="Get Weather", command=get_weather)
- weather_button.grid(row=0, column=1, padx=5)
- # Label to display weather information
- result_label = tk.Label(window, text="")
- result_label.grid(row=1, column=0, columnspan=2, padx=10, pady=10)
- window.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement