1、URLEncode介绍
URL编码(URL encoding),也称作百分号编码(Percent-encoding), 是特定上下文的统一资源定位符 (URL)的编码机制。
将需要转码的字符转为16进制,然后从右到左取4位(不足4位直接处理),每2位做一位,前面加上%,编码成%XY格式。
2、场景
在某些场景下。需要对cookie的内容进行urLencode#”我们一般情况下是:"用正常的cookie进行访问,也是不需要的,
但是,有的时候。cookie的某个值是一个b64# 在传递的时候。需要对b64字符串进行urLencode操作.才能使用。
# 注意,你计算好的cookie的值.
#能用就正常用。用不了的时候。 可以把urLencode作为备选方案
比如:
空格ASCII码是32,对应16进制是20,那么urlencode编码结果是:%20,
中ASCII码是-10544,对应的16进制是D6D0,那么urlencode编码结果是:%D6%D0
3、URLEnccode的python实现
from urllib.parse import urlencode(接收的是字典,一般不用),quote(用这个),quot_plus,unquote,unquot_plus(unquote的升级版)
params ={
"query":"周杰伦",
}
#request会自动帮助我们完成URLEncode编码,但是遇到cookie,需要我们自己处理
print(urlencode(params)) #不接受字符串,接受的是字典,要具有映射关系的
print(quote("周杰伦"),safe='') #quote可以接受字典
#当发送请求之后,浏览器可能会涉及反urlencode
#所以我们应该反向将加密的数据还原出来
s = "被加密的字符串"
print(unquote(s))