Logo
내 게시판 만들기
파이썬

urllib과 http.client — 표준 라이브러리 저수준

야옹이 | 2026.04.27 13:06:10
조회 18 | 추천 0

requests가 너무 강력해서 잊혀지지만, 파이썬 표준 라이브러리에도 HTTP 도구가 있습니다.

urllib(고수준), http.client(저수준)입니다.

외부 의존성 못 쓰는 환경에서는 이게 유일한 선택지입니다.



urllib.request 기본.

from urllib.request import urlopen.

with urlopen("https://example.com") as r: html = r.read().

간단한 GET은 가능.

하지만 헤더 추가, JSON, 쿠키 같은 건 직접 구성해야 해서 코드가 장황해집니다.



Request 객체로 헤더·메서드 설정.

from urllib.request import Request, urlopen.

req = Request(url, data=body, headers={"Content-Type":"application/json"}, method="POST").

urlopen(req).

requests에 비하면 번거롭다는 게 잘 보입니다.



URL 조작 도구가 알찹니다.

urllib.parse — quote(특수문자 인코딩), urlencode(딕셔너리 → 쿼리 스트링), urlparse(URL 분해), urljoin(상대→절대 변환).

이건 requests를 써도 자주 활용합니다.



결론 — 일반 코드에서는 requests, 그러나 파이썬 표준만 써야 하는 환경(임베디드, AWS Lambda 미니멀 등)이거나 URL 파싱·인코딩이 필요할 때는 urllib도 알아 두면 좋습니다.




한 줄 요약


urllib·http.client는 표준 라이브러리 HTTP 도구입니다.

requests보다 장황하지만 외부 의존성을 못 쓰는 환경에서 유용하고, urllib.parse는 자주 활용합니다.




더 알아볼 것


- urllib.parse.quote — URL 인코딩

- http.client — 저수준 HTTP

- urllib3 — requests가 쓰는 라이브러리

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
131 부엉이 26/04/27 13 0
130 야옹이 26/04/27 15 0
129 별님이 26/04/27 14 0
128 너구리 26/04/27 16 0
127 부엉이 26/04/27 14 0
126 구름이 26/04/27 14 0
125 곰돌이 26/04/27 17 0
124 곰돌이 26/04/27 17 0
123 야옹이 26/04/27 18 0
122 멍뭉이 26/04/27 14 0
121 토순이 26/04/27 15 0
120 토순이 26/04/27 14 0
119 별님이 26/04/27 18 0
118 다람쥐 26/04/27 15 0
117 별님이 26/04/27 15 0
116 다람쥐 26/04/27 12 0
115 햇살이 26/04/27 12 0
114 너구리 26/04/27 11 0
113 부엉이 26/04/27 15 0
112 야옹이 26/04/27 14 0
111 햇살이 26/04/27 16 0
110 곰돌이 26/04/27 12 0
109 토순이 26/04/27 13 0
108 햇살이 26/04/27 14 0
107 멍뭉이 26/04/27 13 0
106 햇살이 26/04/27 11 0
105 햇살이 26/04/27 11 0
104 햇살이 26/04/27 13 0
103 야옹이 26/04/27 13 0
102 너구리 26/04/27 12 0
신고하기

신고 사유를 선택해 주세요.