반응형
HTTP 호출을 진행하면, URL을 인코딩하거나 디코딩하는 일을 자주 경험하게 된다.
이때 주의할 점음 문자열을 encode/decode 를 Byte 레벨로하는 것이 아닌 문자열 수준으로 진행해주어야 한다.
즉 전체 문자열이 아닌 일부 UTF-8 로 작성된 문자열만 변환해주면 된다.
이를 효과적으로 해주는 라이브러리가 urllib 의 parse의 quote와 unquote 를 통해 진행할 수 있다.
urllib.parse — URL을 구성 요소로 구문 분석 — Python 3.12.2 문서
필자의 예제 코드로 살펴보면 다음과 같이 진행해볼 수 있다.
from urllib import parse
# URL 인코딩
url = "https://www.google.com/search?q=파이썬 urllib parse 예제"
encoded_url = parse.quote(url)
print(encoded_url)
# URL 디코딩
decoded_url = parse.unquote(encoded_url)
print(decoded_url)
반응형
'Python' 카테고리의 다른 글
Sqlachemy - 특정 날짜 하루의 데이터를 가져오기 (0) | 2024.02.29 |
---|---|
Python - Missing optional dependency 'openpyxl' 해결 (0) | 2024.02.29 |
Python - Header Content-Disposition의 UTF-8에서 Filename 가져오기 (0) | 2024.02.29 |
Python - Error cv2 (-215:Assertion failed) !ssize.empty() in function 'resize' (0) | 2024.02.29 |
Docker - exec, 컨테이너 명령 실행/세션 연결 (0) | 2024.02.28 |