python3的url编码和解码,自定义gbk、utf-8的例子

时间:2021-12-25 04:46:46

因为很多时候要涉及到url的编码和解码工作,所以自己制作了一个类,废话不多说 码上见!

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# coding:utf-8
import urllib.parse
 
 
class Urlchuli():
  """Url处理类,需要传入两个实参:Urlchuli('实参','编码类型'),默认utf-8 
  url编码方法:url_bm() url解码方法:url_jm()"""
 
  def __init__(self,can,mazhi='utf-8'):
    self.can = can
    self.mazhi = mazhi
 
  def url_bm(self):
    """url_bm() 将传入的中文实参转为Urlencode编码"""
    quma = str(self.can).encode(self.mazhi)
    bianma = urllib.parse.quote(quma)
    return bianma
 
  def url_jm(self):
    """url_jm() 将传入的url进行解码成中文"""
    quma = str(self.can)
    jiema = urllib.parse.unquote(quma,self.mazhi)
    return jiema

url解码调用方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# coding:utf-8
 
from urlbm import Urlchuli
 
a = Urlchuli('%B2%E2%CA%D4%CA%C7%B7%F1%B3%C9%B9%A6','gbk') # 第一个是传入的实参,第二个是需要url解码的类型,可以是utf-8、gbk或其他
print(a.url_jm()) # 打印结果:测试是否成功(这里需要注意,如果是utf-8会出现乱码)
url编码调用方法:
 
# coding:utf-8
 
from urlbm import Urlchuli
 
a = Urlchuli('测试是否成功','gbk') # 第一个是传入的实参,第二个是选填url编码的类型(默认utf-8),可以是utf-8、gbk或其他
print(a.url_bm()) # 打印结果:%B2%E2%CA%D4%CA%C7%B7%F1%B3%C9%B9%A6

以上这篇python3的url编码和解码,自定义gbk、utf-8的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_40134903/article/details/80607485