欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

python使用 urllib.unquote亂碼的原因

系統(tǒng) 2115 0

實(shí)際問題

Python中的urllib模塊用來處理url相關(guān)的操作,unquote方法對應(yīng)javascript中的urldecode方法,它對url進(jìn)行解碼,把類似"%xx"的字符替換成單個(gè)字符,例如:“%E6%B3%95%E5%9B%BD%E7%BA%A2%E9%85%92”解碼后會(huì)轉(zhuǎn)換成“法國紅酒”,但是使用過程中,如果姿勢不對,最終轉(zhuǎn)換出來的字符會(huì)是亂碼“?3?????o¢é
”。

            
              
                #取得kw
              
              
kw 
              
                =
              
               self
              
                .
              
              url
              
                .
              
              split
              
                (
              
              
                '&'
              
              
                )
              
              
                [
              
              
                -
              
              
                1
              
              
                ]
              
              
                .
              
              replace
              
                (
              
              
                'kw='
              
              
                ,
              
              
                ''
              
              
                )
              
              
                #url解碼
              
              
word 
              
                =
              
               urllib
              
                .
              
              unquote
              
                (
              
              kw
              
                )
              
            
          

打印結(jié)果
kw的值打印出來的顯示的是:%E5%A4%A7%E6%B4%B2%E5%8F%A4%E6%B8%A1
但是word確是:?¤§?′2?¤???

分析

直接編碼的字符來處理看看是否會(huì)出現(xiàn)亂碼:%E5%A4%A7%E6%B4%B2%E5%8F%A4%E6%B8%A1

            
              
                #取得kw
              
              
kw 
              
                =
              
                %
              
              E5
              
                %
              
              A4
              
                %
              
              A7
              
                %
              
              E6
              
                %
              
              B4
              
                %
              
              B2
              
                %
              
              E5
              
                %
              
              
                8F
              
              
                %
              
              A4
              
                %
              
              E6
              
                %
              
              B8
              
                %
              
              A1”

              
                #url解碼
              
              
word 
              
                =
              
               urllib
              
                .
              
              unquote
              
                (
              
              kw
              
                )
              
            
          

發(fā)現(xiàn)沒有問題word正常顯示
那就是在取值kw的時(shí)候有問題
發(fā)現(xiàn)函數(shù)默認(rèn)返回的是值的類型是unicode
相當(dāng)于 u“%E5%A4%A7%E6%B4%B2%E5%8F%A4%E6%B8%A1”

解決辦法

在函數(shù)調(diào)用之后,使用強(qiáng)制類型轉(zhuǎn)換轉(zhuǎn)為str類型,去掉u

            
              
                #取得kw
              
              
kw 
              
                =
              
               self
              
                .
              
              url
              
                .
              
              split
              
                (
              
              
                '&'
              
              
                )
              
              
                [
              
              
                -
              
              
                1
              
              
                ]
              
              
                .
              
              replace
              
                (
              
              
                'kw='
              
              
                ,
              
              
                ''
              
              
                )
              
               
kw 
              
                =
              
              
                str
              
              
                (
              
              kw
              
                )
              
              
                #url解碼
              
              
word 
              
                =
              
               urllib
              
                .
              
              unquote
              
                (
              
              kw
              
                )
              
            
          

這樣就能正常解碼了

  • PS Unicode類型轉(zhuǎn)str類型,不能使用str()強(qiáng)制轉(zhuǎn)換,而是使用strr.encode(‘utf-8’)編碼轉(zhuǎn)換

更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久精品免费一区二区三区 | 国产激情91久久精品导航 | 婷婷色九月综合激情丁香 | 欧美精品激情 | av色在线观看| 欧美精品久久久 | 午夜色a大片在线观看免费 龙珠z在线观看 | 青青草福利视频 | 四虎欧美在线观看免费 | 日本高清天码一区在线播放 | 49pao强力免费打造在线高清 | 无遮挡羞羞视频 | 国产精品爱久久久久久久电影 | 精品一卡2卡三卡4卡免费观看 | 国产精品高潮呻吟久久av黑人 | 91精品国产综合久久久蜜臀粉嫩 | dy天堂 | A片A三女人久久7777 | 久草久草久草 | 日韩男人的天堂 | 一区二区三区四区国产 | 天天干天天操天天射 | 欧美特一级片 | 免费欧美黄色 | 久久一日本道色综合久久 | 免费国产一区 | 婷婷人人爽人人做人人添 | 青青热在线观看视频精品 | 色屁屁影院www免费 特片网久久 | 欧美日韩国产在线观看 | 日本a视频| 色综合久久天天综合绕观看 | 日本午夜大片免费观看视频 | 免费亚洲黄色 | 无码日韩精品一区二区免费 | 三级在线国产 | 91福利小视频 | 97玖玖| 成人福利在线视频免费观看 | 91在线观看视频 | 亚洲欧美成人综合在线 |