• 请不要在回答技术问题时复制粘贴 AI 生成的内容
wolfdolf
V2EX  ›  程序员

url 中的查询串和 gbk 转换值为何不同,迷惑了

  •  
  •   wolfdolf · Mar 8, 2015 · 2974 views
    This topic created in 4103 days ago, the information mentioned may be changed or developed.

    urllib.quote(a.decode('utf8').encode('gb2312'))

    某汉字,用python可以获取对应url串为 %B0%B2%C8%AB

    但是到了url中查询串怎么是
    %25B0%25B2%25C8%25AB

    它的查询用的应该是gbk转码过来的啊,可是为何每个%号之后多了个数字?

    4 replies    2015-03-08 15:54:30 +08:00
    Sylv
        1
    Sylv  
       Mar 8, 2015
    % 又被 urllib.quote 成了 %25
    yushiro
        2
    yushiro  
       Mar 8, 2015 via iPhone
    %25就是%得转码
    wolfdolf
        3
    wolfdolf  
    OP
       Mar 8, 2015
    @yushiro
    In [17]: urllib.quote(a.decode('utf8').encode('gbk'))
    Out[17]: '%B0%B2%C8%AB'

    python转码不会形成%25,我迷惑的是,为何某网站有%25在查询串里面
    JoeShu
        4
    JoeShu  
       Mar 8, 2015
    >>> urllib.quote("%")
    '%25'

    很明显是进行了两次url编码
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1058 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 22:48 · PVG 06:48 · LAX 15:48 · JFK 18:48
    ♥ Do have faith in what you're doing.