제3장. 파이썬 객체지향 프로그래밍
외부 라이브러리와 API 활용하기
파이썬을 더욱 강력하게 만드는 비밀은 외부 라이브러리와 API를 자유자재로 다루는 데에 있습니다. 표준 라이브러리만으로도 많은 일을 할 수 있지만, 복잡한 웹 통신이나 데이터 분석, 파일 포맷 변환 등 현실 세계의 수많은 문제는 반드시 외부 패키지의 힘을 빌려야 합니다. 이 장에서는 pip를 통한 패키지 설치, requests 라이브러리로 HTTP API 활용, 그리고 개발자가 즐겨 찾는 유용한 외부 라이브러리의 실제 사용법을 살펴봅니다.
pip로 외부 라이브러리 설치·관리하기
외부 라이브러리란 이미 누군가 만들어 놓은 파이썬 코드 묶음으로, PyPI(Python Package Index)에 저장되어 있습니다. 원하는 라이브러리가 있다면 명령 프롬프트(또는 터미널)에서 다음과 같이 설치할 수 있습니다.
pip install 라이브러리명
예를 들어 웹 요청에 자주 쓰이는 requests
를 설치하려면 pip install requests
라고 입력하면 됩니다. pip는 설치, 업데이트, 삭제, 목록 확인까지 모두 지원합니다. 설치된 패키지가 최신 상태인지 확인하거나, 특정 버전으로 설치하고 싶다면 역시 간단한 명령어 한 줄이면 충분합니다. 내부 구조가 복잡하거나 의존관계가 여러 개인 패키지도 pip가 알아서 모두 처리해줍니다.
requests로 HTTP API 다루기
요즘 대부분의 데이터와 기능은 웹 API형태로 외부에 제공됩니다. 파이썬에서 HTTP 통신은 requests
라이브러리만 있으면 손쉽게 구현할 수 있습니다. 예를 들어 어떤 웹사이트에서 JSON 데이터를 받아오고 싶다면 다음과 같이 짧게 표현할 수 있습니다.
import requests
response = requests.get('https://api.example.com/data')
if response.status_code == 200:
print(response.json())
GET, POST, PUT, DELETE처럼 다양한 HTTP 메서드도 직관적으로 호출할 수 있고, 응답 헤더, 본문, 상태 코드 등 모든 요소에 쉽게 접근할 수 있습니다. 보안이 필요한 경우 토큰이나 인증 헤더를 추가하는 것도 어렵지 않으니, 복잡한 서버 연동도 requests
로 해결할 수 있습니다.
파이썬 개발자가 자주 쓰는 서드파티 라이브러리
외부 라이브러리의 세계는 무궁무진합니다. 데이터 구조를 효율적으로 다루고 싶을 때는 numpy
, 웹 크롤링과 파싱을 위해서는 beautifulsoup4
와 lxml
, 데이터 시각화에는 matplotlib
가 널리 사용됩니다. 파일 시스템과 아카이브 작업에는 pathlib
, zipfile
등이 편리하다 할 수 있습니다.
각각의 라이브러리는 공식 문서가 잘 갖추어져 있으니, 문서를 참고하며 예제 코드를 실행해보면서 익혀나가는 것이 최고의 학습 방법입니다. 때로는 라이브러리 버전에 따라 인터페이스가 조금씩 달라질 수 있으니, 항상 설치된 버전에 맞는 예제를 확인하세요.
마무리: 외부의 세계로 뛰어들기
이제 파이썬의 내부 기능에 익숙해졌다면, 외부 라이브러리를 영리하게 활용할 차례입니다. pip 한 줄, import 한 줄이면 새로운 기능을 내 코드에 즉시 추가할 수 있다는 사실만으로도 파이썬의 진짜 매력을 느낄 수 있을 것입니다. 다양한 외부 패키지와 API를 탐험하며, 당신만의 폭넓은 프로그래밍 세계를 구축해보세요.