在獲取zk節(jié)點時,有些子節(jié)點名字直接就是編碼后的url,就像下面這行一樣:

url='dubbo%3A%2F%2F10.4.5.3%3A20880%2Fcom.welab.authority.service.AuthorityService%3Fanyhost%3Dtrue%26application%3Dwelab-authority%26dubbo%3D2.5.7'先需要把這個url里進(jìn)行解碼, 轉(zhuǎn)成如下這種:
dubbo://10.4.5.3:20880/com.welab.authority.service.AuthorityService?anyhost=true&application=welab-authority&dubbo=2.5.7然后有用的參數(shù): url中的ip地址, 參數(shù)中application對應(yīng)的值
>>> import urlparse
>>> urldata = urlparse.unquote(url)
>>> print urldata
dubbo://10.4.5.3:20880/com.welab.authority.service.AuthorityService?anyhost=true&application=welab-authority&dubbo=2.5.7
#轉(zhuǎn)成一個格式化對象
>>> result = urlparse.urlparse(urldata)
>>> print result
ParseResult(scheme='dubbo', netloc='10.4.5.3:20880', path='/com.welab.authority.service.AuthorityService', params='', query='anyhost=true&application=welab-authority&dubbo=2.5.7', fragment='')
#提取url中的參數(shù),即url中?后的內(nèi)容
>>> args = urlparse.parse_qs(result.query)
>>> print args
{'application': ['welab-authority'], 'anyhost': ['true'], 'dubbo': ['2.5.7']}
#獲取我想要的信息
>>> ip= result.netloc
>>> application = args.get('application',[])
>>> print ip
10.4.5.3:20880
>>> print application
['welab-authority']
上面的測試中詳細(xì)打印了輸出信息, 這次就直接寫在py腳本里了。
from urllib import parse
#url解碼
urldata = parse.unquote(urldata)
#url結(jié)果
result = parse.urlparse(urldata)
#url里的查詢參數(shù)
query_dict = parse.parse_qs(result.query)
#獲取我需要的信息
ip = result.netloc
application = query_dict.get('application',[])
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
分享名稱:Python3url解碼與參數(shù)解析-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://chinadenli.net/article6/geoog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、網(wǎng)站制作、建站公司、移動網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、全網(wǎng)營銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容