2014-06-15 4 views
1

키릴 문자 문자열을 Windows-1251 인코딩의 urlencoded 버전으로 변환해야합니다. 다음의 예 문자열 :파이썬에서 Urlencode 키릴 문자

Моцарт

올바른 결과가 같아야

퍼센트 CC의 %의 EE %의 F6 %의 E0 %의 F0의 %의 F2

에서 PHP를 사용하면 다음과 같이 처리 할 수 ​​있습니다.

$request = urlencode(iconv("UTF-8", "windows-1251", "Моцарт")); 
echo $request; 

파이썬에서 같은 목표를 달성하는 방법은 무엇입니까?

+1

무엇 지금까지 해봤 니? ['urllib.urlencode'] (https://docs.python.org/2/library/urllib.html#urllib.urlencode)? – jonrsharpe

+0

[Duplicate] (http://stackoverflow.com/questions/875771/how-does-one-encode-and-decode-a-string-with-python-for-use-in-a-url)? – hd1

답변

4

를 사용하여 문자열에 decodeencode 방법, 다음 파이썬 3에서 urllib.quote

import urllib 
print urllib.quote(s.decode('utf8').encode('cp1251')) 

인쇄

%CC%EE%F6%E0%F0%F2 
+0

@ hd1, 잘 잡습니다. 수정되었습니다 – Fabricator

+0

그리고 당신은 당신의 upvote있어 – hd1

2

를 사용 urllib.request에있는 quote() 기능을 사용

from urllib import request 

request.quote("Моцарт".encode('cp1251')) 

# '%CC%EE%F6%E0%F0%F2'