python解码非英语用作url?

python解码非英语用作url?,python,unicode,utf-8,io,decode,Python,Unicode,Utf 8,Io,Decode,我有一个变量,如title: title = "révolution_essentielle" 我可以这样编码和解码它,用于其他目的: title1 = unicode(title, encoding = "utf-8") 但是我如何保存非英语的内容并将其作为url字符串的一部分来访问url呢?例如,我理想地想要https://mainurl.com/réevolution_essentielle.html通过连接多个字符串,包括标题,如下所示: url = main_url + "/" +

我有一个变量,如
title

title = "révolution_essentielle"
我可以这样编码和解码它,用于其他目的:

title1 = unicode(title, encoding = "utf-8")
但是我如何保存非英语的内容并将其作为url字符串的一部分来访问url呢?例如,我理想地想要
https://mainurl.com/réevolution_essentielle.html
通过连接多个字符串,包括
标题
,如下所示:

url = main_url + "/" + title + ".html"

谁能告诉我怎么做吗?非常感谢

总结一下我们在评论中提到的内容:有一个引用URL的函数(用
%
前缀转义序列替换特殊字符)

对于Python 2(在本例中使用),它是,可以按如下方式使用:

urllib.quote("révolution_essentielle")
当我们的输入是带有宽字符的
unicode
对象时,我们还需要首先对其进行编码,例如:

urllib.quote(u'hey_there_who_likes_lego_that\xe3\u019\xe2_\xe3_...'.encode('utf8')).
但要小心,以便您的表示与对应机器预期/理解的表示相匹配


如果我们谈论的是Python 3,那么等效函数将是:


它可以检查
str
(unicode)参数以及
字节中的编码值。

你现在遇到了什么错误?@Zesima29,它在URL中显示为“r\xc3\xa9volation”你在寻找
urllib.parse.quote(“révolation_essentielle”)
(分别是
urllib.quote(“révolation_essentielle”)
Py2)?这不是西班牙语,是法语!@shenglih好的,有两条信息:我们在谈论Python 2。我真的希望这会产生有效的URL材料…首先编码你的Unicode字符串:
import urlib;urlib.quote(你知道谁喜欢乐高吗?\xe3\u0192\xe2\uxe3?。.encode('utf8')
urllib.parse.quote("révolution_essentielle")