Advertisement

Python Project With Source Code - Weather Forcasting App

Python Project With Source Code - Weather Forcasting App

Weather forecasting app in Python involves integrating with a weather API to fetch real-time weather data based on user inputs. Here’s a simplified version of a weather forecasting app using the Open Weather Map API.

Prerequisites:

Before starting, ensure you have Python installed on your system. This example assumes Python 3.x.

Components of the Project:

  1. User Interface: Command-line interface where users can input a city name.

  2. API Integration: Interaction with the OpenWeatherMap API to fetch weather data based on user input.

Implementation:

Step 1: Setting Up OpenWeatherMap API Access

To access weather data, you'll need an API key from OpenWeatherMap:

  1. Sign up for a free account on OpenWeatherMap.

  2. Get your API key from the dashboard after signing in.

Step 2: Install Requests Library

You'll also need the requests library to make HTTP requests to the OpenWeatherMap API. Install it using pip:

pip Install requests

Step 3: Weather Forecasting App (weather_app.py)

import requests


# OpenWeatherMap API key

API_KEY = 'your_api_key_here'  # Replace with your actual API key


def get_weather(city):

    # API endpoint for current weather data

    url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}&units=metric'


    try:

        # Send GET request to the API

        response = requests.get(url)

        data = response.json()


        if response.status_code == 200:

            # Parse weather data

            weather_description = data['weather'][0]['description']

            temperature = data['main']['temp']

            humidity = data['main']['humidity']


            # Print weather information

            print(f"Weather in {city}:")

            print(f"Description: {weather_description}")

            print(f"Temperature: {temperature}°C")

            print(f"Humidity: {humidity}%")

        else:

            print(f"Error: Unable to retrieve weather data. Status code: {response.status_code}")


    except Exception as e:

        print(f"Error: {e}")


def main():

    print("Welcome to the Weather Forecasting App!")

    print("Enter a city name to get the current weather forecast.")

    city = input("Enter city name: ")


    get_weather(city)


if __name__ == "__main__":

    main()

Explanation:

  • API_KEY: Replace 'your_api_key_here' with your actual API key obtained from OpenWeatherMap.

  • get_weather(city): Function that makes a GET request to the OpenWeatherMap API to fetch current weather data for the specified city.

  • main(): Main function where the user interacts with the app:

    • It prompts the user to enter a city name.
    • Calls get_weather(city) to fetch and display weather information.

Running the Weather Forecasting App:

Save the above code in a file named weather_app.py and run it using:

python weather_app.py

Example Output:

Welcome to the Weather Forecasting App!

Enter a city name to get the current weather forecast.

Enter city name: London

Weather in London:

Description: overcast clouds

Temperature: 18.23°C

Humidity: 77%

Enhancements and Next Steps:

  • Error Handling: Implement more robust error handling for API requests and responses.
  • Extended Features: Expand the app to include more weather parameters (wind speed, pressure, etc.) or forecast for multiple days.
  • GUI: Develop a graphical user interface using libraries like Tkinter or PyQt for a more interactive experience.
  • Geolocation: Incorporate geolocation APIs to automatically detect the user's location based on IP address.

This project provides a basic example of building a weather forecasting app in Python using the OpenWeatherMap API. Customize and extend it based on your needs and learning objectives!

Post a Comment

0 Comments