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

yipeiwu_com5年前Python基础

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

# 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解码调用方法:

# 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的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python多进程控制学习小结

python多进程控制学习小结

前言: python多进程,经常在使用,却没有怎么系统的学习过,官网上面讲得比较细,结合自己的学习,整理记录下官网:https://docs.python.org/3/library/m...

详解Python list 与 NumPy.ndarry 切片之间的对比

详解Python list 与 NumPy.ndarry 切片之间的区别 实例代码: # list 切片返回的是不原数据,对新数据的修改不会影响原数据 In [45]: list1...

python实现逐个读取txt字符并修改

python实现逐个读取txt字符并修改

最近写毕业设计遇到一个问题,就是我从一个txt文件中逐个读取字符,并修改其中的内容后存到另一个txt文件中,如下图: 字符替换规则是把所有的0转化为1,把所有的255转化为0。当然程序...

python tkinter窗口最大化的实现

最近学习python,刚好学到了gui(tkinter)相关的知识,顺便一提,我学python用的是《programming python 4edition》这本书,在这里小小的推荐一下...

完美解决安装完tensorflow后pip无法使用的问题

Win8,ANACONDA3(64-bit),Python3.6.2。ANACONDA Prompt中不能用pip命令安装包,并且是在安装了TensorFlow后才发生的。 报错如下:...