精华内容
下载资源
问答
  • 主要介绍了python实现中文转换url编码的方法,结合实例形式分析了Python针对中文的gbk与utf-8编码转换的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • 今天小编就为大家分享一篇python字符串与url编码的转换实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python进行URL编码

    千次阅读 2020-06-21 22:48:49
    在浏览器发送请求时会对表单请求数据与查询字符串进行一种URL编码,这种编码旨在将数据中的影响HTTP的字符进行转换,变为HTTP允许的字符,Python使用urllib库进行转换 from urllib import parse #数据对象 data ...

    在浏览器发送请求时会对表单请求数据与查询字符串进行一种URL编码,这种编码旨在将数据中的影响HTTP的字符进行转换,变为HTTP允许的字符,Python使用urllib库进行转换

     

    from urllib import parse
    
    #数据对象
    data = {
        "a":"1",
        "b":"3",
        "x":"张三",
        "y":"李四"
    }
    
    #进行url_encode编码,编码结果为查询字符串形式,即进行url编码,然后用a=1&b=2形式拼接键值对
    text = parse.urlencode(data)
    
    print(text)
    
    #进行url解码,但是不会将拼接形式转换为字典形式
    text1 = parse.unquote(text)
    
    print(text1)
    
    #进行url编码,但是这步会将&与=一起转码
    text2 = parse.quote(text1)
    
    print(text2)
    
    
    a = "我是大侦探"
    
    #url编码
    b = parse.quote(a)
    
    print(b)
    
    #url解码
    c = parse.unquote(b)
    
    print(c)

    执行结果为

    a=1&b=3&x=%E5%BC%A0%E4%B8%89&y=%E6%9D%8E%E5%9B%9B
    a=1&b=3&x=张三&y=李四
    a%3D1%26b%3D3%26x%3D%E5%BC%A0%E4%B8%89%26y%3D%E6%9D%8E%E5%9B%9B
    %E6%88%91%E6%98%AF%E5%A4%A7%E4%BE%A6%E6%8E%A2
    我是大侦探

     

    1.parse.urlencode

    url编码函数,参数为dict字典,会将字典键值对以查询字符串方式拼接,并且对每个值进行url编码,返回拼接后的字符串

     

    2.parse.quote

    输入输出都是字符串,单纯进行url编码

     

    3.parse.unquote

    输入输出都是字符串,单纯进行url解码

    展开全文
  • Python url编码和解码

    千次阅读 2019-08-16 13:21:38
    url编码有什么作用? Python怎么对url进行编码和解码? 导入模块 编码 解码 引题 我们上网的时候经常见到url中会有%25E6,这样有%号的字符,下面是51job的链接: https://search.51job.com/list/020000,...

     

    目录

    引题

    url编码有什么作用?

    Python怎么对url进行编码和解码?

    导入模块

    编码

    解码


    引题

    我们上网的时候经常见到url中会有%25E6,这样有%号的字符,下面是51job的链接:

    https://search.51job.com/list/020000,000000,0000,00,9,99,%25E6%25B7%25B1%25E5%25BA%25A6%25E5%25AD%25A6%25E4%25B9%25A0,2,1.html?lang=c&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare=

     

    %25E6%25B7%25B1%25E5%25BA%25A6%25E5%25AD%25A6%25E4%25B9%25A0

    是我搜索的关键字“深度学习”,这是url编码两次后的结果。

    通过在线url解码试试看解码的结果,我用的在线解码网址:https://www.sojson.com/encodeurl.html

    1、第一次解码,得到的结果是%后面加两个字符

    2、第二次解码,得到的就是正常的中文了。

    一般的,url编码后的规律:

    编码一次,%号后面加两个字符;

    编码二次,%号后面加四个字符;

    编码三次,%号后面加六个字符。

     

    url编码有什么作用?

    如果你搜索的关键词是“深度学习&机器学习”,中间有个url的特殊字符&,那么服务器收到这个get请求的时候就会出错,不知道如何去解析请求带的参数了,所以需要把这一整块进行编码。编码一次得到的结果是%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0&%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0,就已经没有特殊字符&,这样请求就没有问题,服务器拿到这个参数进行解码就能正常解析得到想要的参数。

     

    Python怎么对url进行编码和解码?

     

    导入模块

    import urllib.parse

    编码

    urllib.parse.quote(),对字符串进行url编码
    import urllib.parse
    kw="机器学习"
    kw1=urllib.parse.quote(kw)
    print(kw1)
    kw2=urllib.parse.quote(kw1)
    print(kw2)
    kw3=urllib.parse.quote(kw2)
    print(kw3)

    输出结果:

    %E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0
    %25E6%259C%25BA%25E5%2599%25A8%25E5%25AD%25A6%25E4%25B9%25A0
    %2525E6%25259C%2525BA%2525E5%252599%2525A8%2525E5%2525AD%2525A6%2525E4%2525B9%2525A0

    解码

    urllib.parse.unquote() ,对字符串进行url解码
    import urllib.parse
    kw="机器学习"
    # 编码
    kw1=urllib.parse.quote(kw)
    print(kw1)
    kw2=urllib.parse.quote(kw1)
    print(kw2)
    kw3=urllib.parse.quote(kw2)
    print(kw3)
    
    # 解码
    ym2=urllib.parse.unquote(kw3)
    print(ym2)
    ym1=urllib.parse.unquote(ym2)
    print(ym1)
    ym=urllib.parse.unquote(ym1)
    print(ym)

    输出结果:

    # 编码开始
    %E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0
    %25E6%259C%25BA%25E5%2599%25A8%25E5%25AD%25A6%25E4%25B9%25A0
    %2525E6%25259C%2525BA%2525E5%252599%2525A8%2525E5%2525AD%2525A6%2525E4%2525B9%2525A0
    
    # 解码开始
    %25E6%259C%25BA%25E5%2599%25A8%25E5%25AD%25A6%25E4%25B9%25A0
    %E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0
    机器学习

    最后得到我们的最原始的字符串!

     

     

     

     

     

     

    展开全文
  • 使用python进行URL编码

    千次阅读 2020-03-08 23:25:26
    在写网络爬虫时,发现提交表单中的中文字符都变成了TextBox1=%B8%C5%C2%CA%C2%DB这种样子,观察这是中文对应的GB2312编码,实际上是进行了GB2312编码和urlencode。 那么为什么要对URL进行encod...

    原创:https://blog.csdn.net/qq_38607035/article/details/82594822

    为什么要对URL进行encode

    在写网络爬虫时,发现提交表单中的中文字符都变成了TextBox1=%B8%C5%C2%CA%C2%DB这种样子,观察这是中文对应的GB2312编码,实际上是进行了GB2312编码和urlencode。

    那么为什么要对URL进行encode?

    因为在标准的url规范中中文和很多的字符是不允许出现在url中的。为了字符编码(gbk、utf-8)和特殊字符不出现在url中,url转义是为了符合url的规范。

    具体代码

    urlencode编码:urllib中的quote方法

    import urllib.parse
    chinese_str = '中文'
    # 先进行gb2312编码
    chinese_str = chinese_str.encode('gb2312')
    # 输出 b'\xd6\xd0\xce\xc4'
    # 再进行urlencode编码
    chinese_str_url = urllib.parse.quote(chinese_str)
    # 输出 %D6%D0%CE%C4

    urldecode解码:urllib中的unquote方法

    # 由于编码问题会报错,还未解决
    urllib.parse.unquote('%D6%D0%CE%C4')
    # :的url编码为%3A,可输出 http://www.baidu.com
    urllib.parse.unquote('http%3A//www.baidu.com')

    其它应用

    URL中%u开头的字符

    在网页的表单参数中,还遇到过%u开头的字符,得知是中文对应的Unicode编码值 
    这里写图片描述 
    以下代码可以实现字符与unicode编码值的转换

    str = '姓名'
    # 获得urlencode编码
    str = str.encode('unicode_escape')
    print(str)
    # 输出 b'\\u59d3\\u540d'
    str=str.decode('utf-8')
    print(str)
    # 输出 \u59d3\u540d
    str=str.encode('utf-8')
    print(str)
    # 输出 b'\\u59d3\\u540d'
    str=str.decode('unicode_escape')
    print(str)
    # 输出 姓名

    hidden隐藏域对象作为表单参数

    在爬取ASP.NET平台的网站信息时,有VIEWSTATE、EVENTVALIDATION这样的hidden隐藏域对象,作为表单参数发送post请求,所以需要从网页源代码中获取。

    但post请求中的参数值是URL编码值,而网页源码中获取到的是URL解码值,所以需要进行urlencode编码。 
    这里写图片描述 
    这里写图片描述 
    这里写图片描述

    相关代码

    # 网页源码上得到之后,需要urlencode编码
    hid['VIEWSTATE'] = urllib.parse.quote(soup.find(id="__VIEWSTATE")['value'])

    相关工具

    谷歌浏览器的开发者工具中可以查看参数的urlencode和decode值 
    这里写图片描述 
    这里写图片描述

    在线URL编码/解码工具

    可选择编码格式为UTF-8或GB2312

    汉字字符集编码查询

    可查汉字的GB2312等中文编码和Unicode编码

    参考链接

    python中的urlencode和urldecode(代码)

    为什么请求时,需要使用URLEncode做encode转码操作

    字符与unicode编码值的转换decode(‘unicode_escape’)

    展开全文
  • python实现中文转换url编码的方法2文章来源:菜鸟教程...这篇文章主要介绍了python实现中文转换url编码的方法,结合实例形式分析了Python针对中文的gbk与utf-8编码转换的相关技巧,具有一定参考借鉴价值,需要的朋...

    python实现中文转换url编码的方法2文章来源:菜鸟教程https://www.piaodoo.com 欢迎大家相互学习

    中专学校排名http://www.buzc.org/

    茂名论坛http://www.nrso.net/




    这篇文章主要介绍了python实现中文转换url编码的方法,结合实例形式分析了Python针对中文的gbk与utf-8编码转换的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下



    本文实例讲述了python实现中文转换url编码的方法。分享给大家供大家参考,具体如下:

    今天要处理百度贴吧的东西。想要做一个关键词的list,每次需要时,直接添加 到list里面就可以了。但是添加到list里面是中文的情况(比如‘丽江'),url的地址编码却是'%E4%B8%BD%E6%B1%9F',因此需 要做一个转换。这里我们就用到了模块urllib。

    >>> import urllib
    >>> data = '丽江'
    >>> print data
    丽江
    >>> data
    '\xe4\xb8\xbd\xe6\xb1\x9f'
    >>> urllib.quote(data)
    '%E4%B8%BD%E6%B1%9F'
    

    那我们想转回去呢?

    >>> urllib.unquote('%E4%B8%BD%E6%B1%9F')
    '\xe4\xb8\xbd\xe6\xb1\x9f'
    >>> print urllib.unquote('%E4%B8%BD%E6%B1%9F')
    丽江
    

    细心的同学会发现贴吧url中出现的是%C0%F6%BD%AD,而非'%E4%B8%BD%E6%B1%9F',其实是编码问题。百度的是gbk,其他的一般网站比如google就是utf8的。所以可以用下列语句实现。

    >>> import sys,urllib 
    >>> s = '丽江'
    >>> urllib.quote(s.decode(sys.stdin.encoding).encode('gbk'))
    '%C0%F6%BD%AD'
    >>> urllib.quote(s.decode(sys.stdin.encoding).encode('utf8'))
    '%E4%B8%BD%E6%B1%9F'
    >>>
    

    更多关于Python相关内容感兴趣的读者可查看本站专题:《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

    希望本文所述对大家Python程序设计有所帮助。

                        <p><p>									</div>
    			 
    			<p>原文地址是:https://www.piaodoo.com/2861.html<p>茂名论坛https://www.hnthzk.com/ <p>茂名市高级技工学校(茂名一技)http://www.szsyby.net/<p>茂名一技https://www.mmbbu.com/<p>
    
    展开全文
  • from urllib import parse rawurl="测试" url=parse.quote(rawurl) print(url) from urllib import parse rawurl="%E6%B5%8B%E8%AF%95" url=parse.unquote(rawurl) print(url)
  • 今天小编就为大家分享一篇Python爬虫:url中带字典列表参数的编码转换方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • Python3的URL编码解码

    万次阅读 2018-03-28 17:01:29
    前言博主最近在用python3比较强大的Django开发web的时候,发现一些url编码问题,在浏览器提交请求api时,如果url中包含汉子,就会被自动编码掉。呈现的结果是 ==&gt; %xx%xx%xx。如果出现3个百分号为一个原...
  • 主要介绍了python爬虫 urllib模块url编码处理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • pythonurl参数编码与解码

    万次阅读 2018-01-20 18:16:58
    一、简介 ...1、url编码 对字符串编码用urllib.parse包下的quote(string, safe='/', encoding=None, errors=None)方法。 对json格式的参数名和值编码,用urllib.parse包下的 urlencode(query, doseq=
  • Python url编码

    千次阅读 2019-05-10 21:53:54
    Python3对url编解码
  • 1、url编码 对字符串编码用urllib.parse包下的quote(string, safe=’/’, encoding=None, errors=None)方法。 对json格式的参数名和值编码,用urllib.parse包下的 urlencode(query, doseq=False, safe=”, encoding=...
  • python3 的url编码

    千次阅读 2020-05-13 11:50:51
    最近做的项目中,有使用到对中文字符传入到url地址中,因此需要使用编码格式,将中文字符进行编码,方可得到正确的url地址。 解析 对url进行编码&解码。 导入urllib.parse模块,其中quote为编码,unquote为解码...
  • 文章目录为什么要进行url编码python中如何进行URL编码&解码 为什么要进行url编码 **很简单,因为url可以看做是一个很复杂的字符串,它里面有可能包含很多各式各样的字符。在很多应用场景中,这些字符可能导致...
  • 可以利用百度进行URL编码解码 默认gbk https://www.baidu.com/s?wd=中国 python3编码解码示例 # -*- coding: utf-8 -*- # @File : urldecode_demo.py # @Date : 2018-05-11 from urllib.request import quote, ...
  • 因为很多时候要涉及到url的编码和解码工作,所以自己制作了一个类,废话不多说 码上见!# coding:utf-8 import urllib.parse ... url编码方法:url_bm() url解码方法:url_jm()""" ...
  • 因为很多时候要涉及到url的编码和解码工作,所以自己制作了一... url编码方法:url_bm() url解码方法:url_jm() def __init__(self,can,mazhi='utf-8'): self.can = can self.mazhi = mazhi def url_bm(self): url
  • Python笔记-对字符串进行URL编码及解码

    千次阅读 多人点赞 2020-04-11 19:23:46
    这里主要是记录下在HTTP封包中URL编码中的解析与编码 代码模板如下: from urllib import parse if __name__ == '__main__': ...... commitStr = parse.quote("嘤嘤嘤") print(parse.unquote(commitStr)) .....
  • python3之url编码互转

    千次阅读 2019-04-26 11:45:57
    1、url编码 #先引入模块 from urllib.request import quote ff = '摄像头' ff = quote(ff) print(ff) 2、url解码 # 解码是另一个模块 from urllib import parse aa = '%E6%91%84%E5%83%8F%E5%A4%B4' ret = parse....
  • python url编码与解码

    2019-06-14 15:25:47
    在通过浏览器修改数据库时,要对url内容进行编码 quote()编码; unquote()解码; 直接上代码:
  • Pythonurl编码

    千次阅读 2018-05-23 13:55:46
    为什么要进行url编码 url带参数的请求格式为(举例): http://www.baidu.com/s?k1=v1&amp;amp;k2=v2 参数中包含中文或者?、=等特殊符号时,通过url编码,将data转化为特定格式, 将中文和特殊符号进行编码,...
  • PythonURL编码和解码

    千次阅读 2020-05-22 16:31:30
    在做接口测试时,时常会发现抓取的接口参数中...、=等特殊符号时,需要通过url编码,将data转化为特定格式k1=v1&k2=v2,并且将中文和特殊符号进行编码 ''' 遇到问题没人解答?小编创建了一个Python学习交流QQ群:
  • python3 url 编码 解码

    2020-07-18 21:31:40
    对于url编码的转换,主要用urllib.parse包中的quote和unquote方法。 quote进行解码,unquote进行编码。 代码实例: import urllib.parse u = "%E6%88%91%E7%88%B1%E4%B8%AD%E5%9B%BD" print("url解码:",urllib...
  • 本文实例讲述了python实现文件路径和url相互转换的方法。分享给大家供大家参考。具体实现方法如下: import urllib pathname = 'path/to/file/or/folder/' ... 您可能感兴趣的文章:python字符串与url编码
  • url编码形式,我用requests发送请求时会自动将%2e url解码为 . 。这样是不行的,必须要使用原始字符串方式进行发送 http://172.16.10.102:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd 如下我用requests...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 89,573
精华内容 35,829
关键字:

url编码python

python 订阅