포스트

파이썬에서 쿼리스트링을 URL 인코딩하는 방법

개요

쿼리스트링이라는 것은 웹 주소에 데이터를 포함시키기 위한 문자열 형태입니다. URL 인코딩은 이 쿼리스트링을 안전하게 전송할 수 있도록 하는 방법입니다. 이 글에서는 파이썬에서 쿼리스트링을 어떻게 URL 인코딩하는지에 대해 자세히 알아보겠습니다.

urllib.parse 모듈 사용하기

파이썬에서는 urllib.parse라는 내장 모듈을 사용하여 쿼리스트링을 URL 인코딩할 수 있습니다. 이 모듈의 urlencode 함수를 사용하면 됩니다.

1
2
3
4
from urllib.parse import urlencode

data = {'key1': 'value1', 'key2': 'value2'}
encoded_data = urlencode(data)

urlencode 함수는 딕셔너리 형태의 데이터를 받아 URL 인코딩된 문자열을 반환합니다. 예를 들어, 위의 코드에서 encoded_data는 “key1=value1&key2=value2”라는 문자열을 반환합니다.

주의 사항

  1. 딕셔너리 형태의 데이터: urlencode 함수에 전달되는 데이터는 딕셔너리 형태여야 합니다. 키와 값 모두 문자열이어야 하며, 값에 특수문자가 포함된 경우 자동으로 인코딩됩니다.

  2. 공백과 특수문자: URL 인코딩은 공백을 %20 또는 +로, 그리고 특수문자를 %와 16진수 코드로 변환합니다.

  3. Unicode 문자: 유니코드 문자도 %와 16진수 코드로 변환됩니다. 예를 들어, ‘안녕’은 %EC%95%88%EB%85%95으로 인코딩됩니다.

에러 및 문제 상황

urllib.parse 모듈이나 urlencode 함수에서 주로 발생하는 에러는 TypeError입니다. 이 에러는 잘못된 형태의 데이터가 함수에 전달되었을 때 발생합니다.

결론

파이썬에서 쿼리스트링을 URL 인코딩하는 것은 매우 간단합니다. urllib.parse 모듈의 urlencode 함수를 사용하면 딕셔너리 형태의 데이터를 쉽게 인코딩할 수 있습니다. 이 기능은 웹 크롤링, API 호출 등 다양한 상황에서 유용하게 사용됩니다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.