美文网首页
爬虫数据(js的escape)解码总结

爬虫数据(js的escape)解码总结

作者: 隐墨留白 | 来源:发表于2019-11-28 16:59 被阅读0次
  1. 带%20的
    通常是 urlencode/quote 转码,%20表示空格

    在get请求的中,URL串应该被encode成 ‘application/x-www-form-urlencoded’ 格式的。在这个格式中,空格会被特殊替换成 +。
    
    然而很多的http协议说明里,并没有要求需要特殊处理空格’ ‘,那么就会遵循一般的编码要求, 即将非字母字母字符,encode成百分号+其ASCII码的十六进制即可。
    那么空格的 ASCII码为32,十六进制 0x20, 因此会被decode成%20
    
  2. 带%25的
    通常是 双 quote() 转码。

    print(quote('隐 墨 留 白'))
    print(quote(quote('隐 墨 留 白')))
    %E9%9A%90%20%E5%A2%A8%20%E7%95%99%20%E7%99%BD
    %25E9%259A%2590%2520%25E5%25A2%25A8%2520%25E7%2595%2599%2520%25E7%2599%25BD
    
  3. js的escape编码解码(站长素材网)

     var jsj='美女';
     document.write("escape编码:");
     var str=escape(jsj);
     document.write(str);
     document.write("unescape解码:");
     var dis=unescape(str);
     document.write(dis);
    
     输出:
     escape编码:%u7F8E%u5973
     unescape解码:美女
    

    用python来实现

     escape_str = '%u7F8E%u5973'
     unescape_str = escape_str.replace('%u', '\\u').encode('utf-8').decode('unicode_escape')
     print(unescape_str)
     美女
    
     wd = '美女'
     escape_str = wd.encode('unicode_escape').decode('utf-8').replace('\\u','%u')
     print(escape_str)
     %u7f8e%u5973

相关文章

网友评论

      本文标题:爬虫数据(js的escape)解码总结

      本文链接:https://www.haomeiwen.com/subject/nsvbwctx.html