본문 바로가기
Python/크롤링, 스크래핑 (Selenium 등등)

[Python] 안전한 URL 문자열로 인코딩, 디코딩하는 방법 quote(), unquote()

by dong_su 2024. 5. 29.

urllib.parse 이란? 

위 모듈은 URL을 안전하게 처리하고 다룰 수 있는 기능을 제공합니다. 그 중에서도 quote 함수는 URL의 일부분으로 사용할 수 없는 문자를 안전한 형태로 인코딩하여 URL을 생성할 때 사용됩니다. 

이 함수는 일반적으로 URL에서 사용할 수 없는 문자들을 %xx 형태로 인코딩하여 URL에 사용할 수 있게 해줍니다.

예를 들어, 공백이나 특수 문자 등이 URL에 포함될 때 이러한 문자들을 안전하게 인코딩하여 URL을 만들 때 사용됩니다.

 

디코딩하여 URL을 생성할 때는 unquote() 함수를 사용합니다.


인코딩함수 quote() 예시

from urllib.parse import quote

# 안전한 문자열로 URL 인코딩
url = "https://www.example.com/search?q=python programming"
encoded_url = quote(url)

print("Encoded URL:", encoded_url)

# 결과
Encoded URL: https%3A//www.example.com/search%3Fq%3Dpython%20programming

 

디코딩함수 unquote() 예시

from urllib.parse import unquote

# 인코딩된 URL
encoded_url = "https%3A//www.example.com/search%3Fq%3Dpython%20programming"

# 디코딩
decoded_url = unquote(encoded_url)
print("Decoded URL:", decoded_url)

# 결과
Decoded URL: https://www.example.com/search?q=python programming