파이썬 웹훅을 사용한 실시간 날씨 예보 서비스 구축 방법
소개
실시간 날씨 예보 서비스는 매우 유용한 기능이며, 파이썬 웹훅을 활용하여 구축할 수 있습니다. 이 글에서는 실시간 날씨 정보를 가져와서 사용자에게 보여주는 간단한 예제를 통해 구현 방법을 설명하겠습니다.
전제조건
- Python 3.x 이상 버전이 설치되어 있어야 합니다.
- OpenWeatherMap API 키가 있어야 합니다. OpenWeatherMap에서 무료로 API 키를 발급받을 수 있습니다.
구현 단계
1. 필요한 라이브러리 설치
먼저 아래 명령어를 사용하여 필요한 라이브러리를 설치합니다.
pip install requests
2. API 키 설정
발급받은 OpenWeatherMap API 키를 사용하기 위해, config.py
라는 파일을 생성하고 다음과 같이 API 키를 설정합니다.
API_KEY = "YOUR_API_KEY"
3. 날씨 정보 가져오기
아래 코드를 사용하여 OpenWeatherMap API를 호출하여 날씨 정보를 가져옵니다. 이 코드를 weather.py
라는 파일로 저장합니다.
import requests
import json
from config import API_KEY
def get_weather(city):
url = f"http://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}"
response = requests.get(url)
data = json.loads(response.text)
return data
city = "Seoul"
weather_data = get_weather(city)
print(weather_data)
4. 결과 확인
터미널에서 weather.py
파일을 실행하여 날씨 정보를 확인할 수 있습니다.
5. 웹훅 구현
아래 코드를 사용하여 Flask 웹 프레임워크를 이용하여 웹훅을 구현합니다. 이 코드를 app.py
라는 파일로 저장합니다.
from flask import Flask, jsonify
from weather import get_weather
app = Flask(__name__)
@app.route("/weather/<city>", methods=["GET"])
def weather(city):
weather_data = get_weather(city)
return jsonify(weather_data)
if __name__ == "__main__":
app.run()
6. 서비스 테스트
터미널에서 app.py
파일을 실행하고 웹 브라우저에서 http://localhost:5000/weather/Seoul
에 접속하여 데이터를 확인합니다. 웹훅을 통해 실시간 날씨 정보가 반환되는 것을 확인할 수 있습니다.
마무리
이렇게 파이썬 웹훅을 사용하여 실시간 날씨 예보 서비스를 구축하는 방법을 알아보았습니다. 이를 응용하여 사용자에게 보다 다양한 형태의 날씨 정보를 제공할 수 있으니, 향후 프로젝트에서 활용해보시기 바랍니다.
해시태그
#파이썬 #웹훅 #날씨