Ch.1 Python 라이브러리 15선

requests — 인터넷에서 데이터 가져오기

lightbulb

핵심 개념

requests

Python으로 HTTP 요청을 보내는 라이브러리

API

프로그램 간 데이터를 주고받는 인터페이스


article

핵심 내용

requests는 인터넷에서 데이터를 가져옵니다

한 줄 요약: 웹사이트나 API 서버에 요청을 보내고, 돌아오는 데이터(JSON, HTML 등)를 받아오는 라이브러리. 실생활 비유: 브라우저 주소창에 URL을 입력하면 페이지가 열리잖아요? requests는 그 '주소창 입력 → 결과 받기'를 코드로 하는 겁니다. 브라우저 없이요.

브라우저 열 필요 없이 데이터를 자동 수집

수동 (브라우저): 사이트 접속 → 환율 확인 → 메모장에 복사. 매일 아침 반복. 날씨도 직접 검색.

코드 (requests): r = requests.get(api_url)

data = r.json()

print(data['환율'])

자동 실행, 알림까지.

한 줄 설치, 세 줄로 API 호출

pip install requests
import 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으로 파싱하는 메서드는?

key

핵심 용어

🌐

requests

Python으로 HTTP 요청을 보내는 라이브러리

🔗

API

프로그램 간 데이터를 주고받는 인터페이스

💱 환율 조회

실시간 환율 API를 호출해서 매일 자동으로 기록

🌤️ 날씨 알림

기상청 API로 오늘 날씨를 가져와서 슬랙/카톡에 전송

📡 데이터 수집

공공 데이터 포털 API로 통계 데이터를 자동 다운로드

check_circle

핵심 정리

  • 1requests는 웹 API에서 데이터를 가져오는 핵심 라이브러리
  • 2requests.get(url)로 호출, r.json()으로 JSON 파싱, status_code로 성공 확인
  • 3환율, 날씨, 공공데이터 등 API만 있으면 어떤 데이터든 자동 수집 가능
  • 4AI 프롬프트에 API 주소 + 원하는 데이터 형식을 명시하면 완성 코드 생성

퀴즈와 인터랙션으로 더 깊이 학습하세요

play_circle인터랙티브 레슨 시작