Ch.1 Python 라이브러리 15선
requests — 인터넷에서 데이터 가져오기
핵심 개념
requests
Python으로 HTTP 요청을 보내는 라이브러리
API
프로그램 간 데이터를 주고받는 인터페이스
핵심 내용
requests는 인터넷에서 데이터를 가져옵니다
한 줄 요약: 웹사이트나 API 서버에 요청을 보내고, 돌아오는 데이터(JSON, HTML 등)를 받아오는 라이브러리. 실생활 비유: 브라우저 주소창에 URL을 입력하면 페이지가 열리잖아요? requests는 그 '주소창 입력 → 결과 받기'를 코드로 하는 겁니다. 브라우저 없이요.
브라우저 열 필요 없이 데이터를 자동 수집
수동 (브라우저): 사이트 접속 → 환율 확인 → 메모장에 복사. 매일 아침 반복. 날씨도 직접 검색.
코드 (requests): r = requests.get(api_url)
data = r.json()
print(data['환율'])
자동 실행, 알림까지.
한 줄 설치, 세 줄로 API 호출
pip install requestsimport requests
r = requests.get('https://api.exchangerate-api.com/v4/latest/USD')
print(r.json()['rates']['KRW'])실행 결과: 현재 USD → KRW 환율이 숫자로 출력됩니다 (예: 1380.5). 인터넷 연결만 있으면 실시간 데이터를 바로 받아올 수 있어요.
API 주소를 알려주면 끝
좋은 프롬프트 예시 "Python requests로 공공데이터 날씨 API를 호출해서 서울의 현재 기온과 날씨 상태를 가져와서 출력해줘"
프롬프트 변형 • "JSON 응답에서 특정 키만 뽑아서 리스트로 만들어줘" • "API 호출 실패 시 에러 메시지 출력하게 해줘" • "결과를 CSV 파일로 저장해줘"
import requests
url = 'https://api.exchangerate-api.com/v4/latest/USD'
r = requests.get(url)
if r.status_code == 200:
krw = r.json()['rates']['KRW']
print(f'오늘 환율: {krw:,.0f}원')
else:
print(f'에러 발생: {r.status_code}')주요 통화 환율 모니터
import requests
from datetime import datetime
url = 'https://api.exchangerate-api.com/v4/latest/USD'
r = requests.get(url)
rates = r.json()['rates']
# 관심 통화
targets = ['KRW', 'JPY', 'EUR', 'GBP', 'CNY']
names = {'KRW': '원', 'JPY': '엔', 'EUR': '유로', 'GBP': '파운드', 'CNY': '위안'}
print(f'=== 환율 ({datetime.now().strftime("%Y-%m-%d %H:%M")}) ===')
for code in targets:
rate = rates[code]
print(f' 1 USD = {rate:>10,.2f} {names[code]}')
print('\n데이터 출처: exchangerate-api.com')실행 방법: `python 환율조회.py`로 실행. 5개 주요 통화의 실시간 환율이 정렬되어 출력됩니다. cron이나 작업 스케줄러에 등록하면 매일 자동 실행도 가능합니다.
requests 라이브러리에서 GET 요청의 응답을 JSON으로 파싱하는 메서드는?
핵심 용어
requests
Python으로 HTTP 요청을 보내는 라이브러리
API
프로그램 간 데이터를 주고받는 인터페이스
💱 환율 조회
실시간 환율 API를 호출해서 매일 자동으로 기록
🌤️ 날씨 알림
기상청 API로 오늘 날씨를 가져와서 슬랙/카톡에 전송
📡 데이터 수집
공공 데이터 포털 API로 통계 데이터를 자동 다운로드
핵심 정리
- 1requests는 웹 API에서 데이터를 가져오는 핵심 라이브러리
- 2requests.get(url)로 호출, r.json()으로 JSON 파싱, status_code로 성공 확인
- 3환율, 날씨, 공공데이터 등 API만 있으면 어떤 데이터든 자동 수집 가능
- 4AI 프롬프트에 API 주소 + 원하는 데이터 형식을 명시하면 완성 코드 생성
퀴즈와 인터랙션으로 더 깊이 학습하세요
play_circle인터랙티브 레슨 시작