코드라이언의 [심화] 같이 푸는 PYTHON 과정의 날씨 정보 받아오기 내용을 간략히 정리한 것이다.
1. 필요한 모듈을 import 한다.
import requests
import json
2. 내가 알고싶은 도시와 보고싶은 언어를 추가하여 api 주소를 완성한다.
city = "Seoul" # 보고싶은 도시
apikey = "#######" # 내 API key값을 넣어준다.
lang = "kr" # 보고싶은 나라 언어
api = f"http://api.openweathermap.org/data/2.5/weather?q={city}&appid={apikey}&lang={lang}&units=metric"
apikey에 내가 발급받은 API key 값을 넣어 누가 사용한다는 것을 알려주는 의미로 사용한다.
3. api주소로 요청을 보내고 응답받은 내용을 json으로 변경하기
result = requests.get(api)
data = json.loads(result.text)
requests 모듈로 요청을 보내고 result로 응답을 받아온다.
result 를 출력해보면 <Response [200]>이라는 값을 출력해준다. 출력의 의미는 제대로 응답을 받았다는 의미이다.
응답받은 내용을 보기위해 result.text를 사용하고 그 값을 json.loads(result.text)를 이용해 json type으로 변경해준다.
result.text
data # json으로 변경된 내용 값
json으로 변경된 내용이 더 보기 깔끔한 것을 볼 수 있다.
그리고 많은 데이터들을 json 파일로 많이 사용하기 때문에 익숙해질 필요가 있다.
4. 내가 보고싶은 내용을 가져온다.
print(data["name"],"의 날씨입니다.")
print("날씨는 ",data["weather"][0]["description"],"입니다.")
print("현재 온도는 ",data["main"]["temp"],"입니다.")
print("하지만 체감 온도는 ",data["main"]["feels_like"],"입니다.")
print("최저 기온은 ",data["main"]["temp_min"],"입니다.")
print("최고 기온은 ",data["main"]["temp_max"],"입니다.")
print("습도는 ",data["main"]["humidity"],"입니다.")
print("기압은 ",data["main"]["pressure"],"입니다.")
print("풍향은 ",data["wind"]["deg"],"입니다.")
print("풍속은 ",data["wind"]["speed"],"입니다.")
가져오는 방법은 딕셔너리에서 내용을 가져오는 방법처럼 key 값을 이용하여 불러온다.
코드는 간단하지만 API를 사용하는 방법과 json 파일을 사용해볼 수 있는 유익한 수업이였다.
자세한 내용을 공부하고 싶다면 코드라이언 [심화] 같이 푸는 PYTHON 과정을 들어보는 것을 추천한다.
코드라이언 | 손으로 하는 진짜 코딩
멋쟁이사자처럼이 만든 온라인 코딩 교육 서비스 코드라이언, 이제 눈으로만 공부하지 말고 손으로 진짜 코딩 공부를 시작해보세요!
www.codelion.net
'DL(Deep-Learning) > Python 기초' 카테고리의 다른 글
[Python] 예외처리 (0) | 2022.01.26 |
---|---|
[Python] 클래스 Class 2 (0) | 2022.01.26 |
[Python] 클래스 Class 1 (0) | 2022.01.26 |
[python] 함수 Function (0) | 2022.01.26 |
[코드라이언] 번역하기 (0) | 2022.01.26 |