我有一个使用urllib3库下载网站html代码的功能。我正在使用request_encode_url函数通过GET传递参数,如果我不使用像'ñ'这样的特殊拉丁字符,它可以正常工作。如果我使用'ñ',则网址编码不正确。
例如,如果我传递像“Elseñor”这样的参数,则此函数将其转换为“El +señ”而不是“El + se%F1or”。
z='El señor'
fields={'sec':'search','value': z}
http = urllib3.PoolManager()
r = http.request_encode_url('GET', 'http://www.myurl.com/search.php',fields)
预期的网址必须如下:
http://www.myurl.com/search.php?sec=search&value=El+se%F1or
但如果我使用特殊字符,我会获得下一个网址:
http://www.myurl.com/search.php?sec=search&value=El+señor
有人可以说我怎么能用特殊字符传递参数来编码正确的网址?
我正在使用Python 3.4
答案 0 :(得分:0)
我找到了一个解决方案,也许这是一个愚蠢的事情,但我的python级别很低。
我将它编码为latin1:
function showUnitBar(units) {
$("#unit_bar").remove();
$('.svg-container').append('<div id="unit_bar">'
+ '<input type="range" id="unit_input" value="1" min="1" max="' + (units - 1) + '" oninput="document.getElementById('unit_output').innerHTML = this.value">'
+ '<output id="unit_output">1</output>'
+ '<input type="button" value="Send Units" id="send_units">'
+ '</div>');
}
showUnitBar(5);