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

yipeiwu_com6年前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中的__slots__缓存资源以节省内存开销的方法

用Python中的__slots__缓存资源以节省内存开销的方法

我们曾经提到,Oyster.com的Python web服务器怎样利用一个巨大的Python dicts(hash table),缓存大量的静态资源。我们最近在Image类中,用仅仅一行...

使用python的chardet库获得文件编码并修改编码

首先需要安装chardet库,有很多方式,我才用的是比较笨的方式:sudo pip install chardet 复制代码 代码如下:#!/usr/bin/env python# co...

python版本的仿windows计划任务工具

python版本的仿windows计划任务工具

计划任务工具-windows 计划任务工具根据自己设定的具体时间,频率,命令等属性来规定所要执行的计划。 效果图 代码 # -*- coding: utf-8 -*- """ M...

Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍

Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍

1. 添加一个新对象 前面介绍了映射到实体表的映射类User,如果我们想将其持久化(Persist),那么就需要将这个由User类建立的对象实例添加到我们先前创建的Session会话实例...

qpython3 读取安卓lastpass Cookies

之前我的博客写了python读取windows chrome Cookies,沿着同样的思路,这次本来想尝试读取安卓chrome Cookies, 但是可能是chrome的sqlite3...