gpt4 book ai didi

python - 使用 Blender 中嵌入的 Python 解码 URL

转载 作者:太空宇宙 更新时间:2023-11-04 05:58:22 24 4
gpt4 key购买 nike

我有这个问题:我正在为 Blender 编写脚本,该脚本获取来自 URL 的文本并制作该文本的 3D 对象。

此文本可以用任何语言编写,例如:西类牙语、英语、俄语、阿拉伯语、中文等...

请记住,Blender 附带的 Python 并没有所有的库,尤其是没有 urllib。我也无法安装任何外部库。

所以我在我的代码中复制并粘贴了 unquote 函数来转换文本。麻烦就在这里开始了。

例如,如果我得到:

'Hello%20World' 在取消引用之后我得到了 'Hello World' 并且没问题。

但是如果文本是:

'%C3%A1%20%C3%A9%20%C3%AD%20%C3%B3%20%C3%BA'

在取消引号之后是 'á É Ã Ã³ úá é ó ú' 而我想要的是:'á é í ó ú'

最后,如果我有这段文字:

'%D9%86%D9%86%D8%AA%D9%8A%D9%84%D8%AA%D9%8A%D8%A8%D9%88%D8%AA'

它被解码为 'ÙÙتÙÙتÙبÙتÙÙتÙÙتÙبÙت',但我希望:'aved ÙتÙÙبÙتÙÙتÙÙتÙبÙت',但我期望:'aved notifolafariafsiوت'

据我研究,问题是字符串的编码,因为如果我这样做:

userText = unquote('%C3%A1%20%C3%A9%20%C3%AD%20%C3%B3%20%C3%BA').encode('latin-1').decode('utf-8')

字符串已正确转换,我得到:'á é í ó ú'。但在文本为阿拉伯语的情况下,这是行不通的。而且我没有弄清楚阿拉伯文本的正确编码是什么,因为那些出现在 en encoding python documentation 中的编码是什么?没有用。

无论如何,这个问题更普遍,因为我没有机会知道文本是怎样的,我只有文本所在的 url 部分。

奇怪的是,在我的代码中将字符串硬编码到任何类型的文本中都可以正常工作。

那么,有谁知道以正确的方式将此 URL 正确编码和解码为字符串的方法吗?

谢谢,

贡萨。

最佳答案

我想通了,问题是使用过时的 urllib .

最近我尝试使用位于我计算机中的 Python 3 的 urllib,并且运行良好。没有检查我使用的是我的错误吗?

我设法在我的代码中导入了 parse.py :D

现在我只做 userText = parse.unquote(url)

关于python - 使用 Blender 中嵌入的 Python 解码 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26513684/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com