[파이썬] API 사용하기

반응형

API 사용하기

 

 

간단한 api 사용하는 방법에 대해 소개하겠습니다.

 

 

api 제공 사이트

세계의 날씨 사이트

openweathermap.org/

 

Сurrent weather and forecast - OpenWeatherMap

2 Billion Forecasts Per Day 2,500 new subscribers a day 2,600,000 customers 20+ weather APIs 2 Billion Forecasts Per Day 2,500 new subscribers a day 2,600,000 customers 20+ weather APIs

openweathermap.org

회원가입 진행 후 => api 키를 발급받습니다.

 

 

api 키는 이 화면에서 회원이면 누구나 받아 올 수 있습니다.

제 api키는 가렸습니다.

 

 

 

import requests

#보통 웹 API의 결과는 JSON 형식이나 XML 형식 리턴을 한다.
#openweathermap에서는 JSON 형식으로 리턴한다.
# 따라서 , JSON 형식의 데이터를 파이썬 데이터형식으로 변환해줘야 하는데
# 이때 JSON 모듈이 필요하다.

import json

#API키를 지정한다. 여러분들의 api키를 사용
apikey="발급 받은 api 입력"

city_list = ["Seoul, KR", "Tokuo, JP", "New York, US"]

#API 지정
api ="http://api.openweathermap.org/data/2.5/weather?q={city}&APPID={key}"

#켈빈 온도를 섭씨 온도로 변환하는 함수
k2C = lambda k: k- 273.15

#각 도시의 정보를 추출하기
for name in city_list:
    
    #API의 URL 구성하기
    url = api.format(city=name, key=apikey)
    
    #API 요청을 보내 날씨 정보를 가져오기
    res = requests.get(url)
    
    #JSON형식의 데이터를 파이썬으로 변환
    data = json.loads(res.text)
    
    
# 결과 출력하기
print("**도시 = ", data["name"])
print("| 날씨 = ", data["weather"][0]["description"])
print("| 최저 기온 = ", k2C(data["main"]["temp_min"]))
print("| 최고 기온 = ", k2C(data["main"]["temp_max"]))
print("| 습도 = ", k2C(data["main"]["humidity"]))
print("| 기압 = ", k2C(data["main"]["pressure"]))
print("| 풍향 = ", k2C(data["wind"]["deg"]))
print("| 풍속 = ", k2C(data["wind"]["speed"]))
print(" ")

 

반응형

댓글

Designed by JB FACTORY