2017-03-06 23 views
2

我有這個網址:從URL轉換多個值JSON在Django

http://example.com?variable=1&variable=2&a=text 

我想這些值轉換成JSON。

我曾嘗試:

data = json.dumps(request.GET) 

,但我得到{"variable": "2", "a": "text"}

這似乎爲單值而不是多個的工作。

如何從URL轉換中獲取所有值?

+0

的可能的複製[URL的查詢參數與dict蟒](http://stackoverflow.com/questions/21584545/url -query-parameters-to-dict-python) –

回答

3

urlparse模塊可以爲您做到這一點。

結果:

from urlparse import urlparse, parse_qs 

o = urlparse('http://example.com?variable=1&variable=2&a=text') 
qs = parse_qs(o.query) 
print(qs) 

結果:

{'variable': ['1', '2'], 'a': ['text']} 
+0

由於某種原因,我有這個錯誤(urlsplit中的anaconda2/lib/python2.7/urlparse.py,第182行):'function'對象沒有屬性'find' 所以我現在不能嘗試...尋找解決這個錯誤的方法。 –

+0

解決了,但我得到了這個:{'a':['1','2'>>「],'search_txt':['T']} –

+0

它似乎工作。我得到這個結果的原因似乎是request.get_full_path。它西港島線返回類似:<的> 注:我使用Django –