美文网首页
python3中的urlretrieve对于中文url是如何处理

python3中的urlretrieve对于中文url是如何处理

作者: sky_memory | 来源:发表于2018-02-22 20:06 被阅读0次

因为HTTP协议是ASCII编码的形式呀~~~

所以。。。中文必须要变成字母然后才能正确编码为字节流,然后发到网络中。。。

比如:

https://img.581ss.com/tubaobao/这是一段中文/1.jpg

在浏览器中需要变成:

https://img.581gg.com/tubaobao/%E8%95%BE%E4%B8%9D%E5%85%94%E5%AE%9D%E5%AE%9D%E5%90%88%E9%9B%862013/%E9%BB%91%E8%89%B2%E6%B3%B3%E8%F1%A3%E5%A4%A7%E6%B5%B7%E5%A5%97%E5%9B%BE/2.jpg

这样的编码才能被urlretrieve识别下载:

1,所以要用quote方法

from urllib.parse import quote

url='http://www.example.com/api.php?text=中文在这里'

# 不带附加参数print('\n不带附加参数:\n%s'%quote(url))

# 附带不转换字符参数

print('\n附加不转换字符参数:\n%s'%quote(url,safe='/:?='))

作者:登峰

链接:https://www.zhihu.com/question/22899135/answer/119088406

来源:知乎

2,或者自己编写中文处理函数

def is_chinese(uchar):

if uchar >=u'\u2E80' and uchar <=u'\uFE4F':

return True

    else:

return False

调用:

url_after=str()

for c in url_before:

    if is_chinese(c):

        c = quote(c)

    url_after+= c

相关文章

  • python3中的urlretrieve对于中文url是如何处理

    因为HTTP协议是ASCII编码的形式呀~~~ 所以。。。中文必须要变成字母然后才能正确编码为字节流,然后发到网络...

  • 05存储数据

    Python3中,urllib.request.urlretrieve根据文件的URL下载文件。 程序从http:...

  • iOS URL处理

    今天讲三个关于 URL 处理的小技巧 URL中含有中文导致无法解析怎么办 URL中文乱码如何处理 URL如何解析参...

  • 遇到的问题汇总贴(持续更新)

    1.request.urlretrieve在python3中应该写成 :urllib.request.urlret...

  • urllib.request.retrieve

    urlretrieve(url, filename=None, reporthook=None, data=Non...

  • [iOS]url中中文的处理

    在实际请求的时候,如果请求参数中包含有中文,服务器可能会不识别。可以采用以下方法: 处理完字符串后,再拼接在url...

  • 文本/数据操作

    大文件读取 json 中文编码问题: 排序: url中文转码(python3) csv 文件操作模式 xml lx...

  • 后端返回URL含有中文进行编码、解码处理

    处理这个问题的初衷是:后端返回的用于跳转web页面的URL含有中文,WKWebView在加载包含中文的URL时发生...

  • url中文乱码

    iOS中的URL处理中文乱码 - CSDN博客 1.url编码 ios中http请求遇到汉字的时候,需要转化成UT...

  • iOS string转utf8

    网络请求url中如果包含空格或者中文字符串的话,需要单独处理 oc中 swift中 如果url中包含 # 等特殊字...

网友评论

      本文标题:python3中的urlretrieve对于中文url是如何处理

      本文链接:https://www.haomeiwen.com/subject/dbbztftx.html