[英]How do I take a GET request and turn it into a JSON object?
我實際上不想對網站進行任何調用,但我必須接受此 GET 請求並將其轉換為 JSON object。
?goal=NOT_GOAL_SETTING&kpi=lfa&sec_kpi=not_being_used&numdays=31&budget=13000000&channel=not_being_used&channel_max=not_being_used&brand=Ram&nameplate=namplate1_nameplate2_&target=800000&nameplate_min_spend=0_0_0_0_0_0_0&nameplate_max_spend=0_0_0_0_0_0_0&max_lfas=70000_100000_4000_400000_90000_15000_2000&search_digital_min_spend=0_0&search_digital_max_spend=0_0&search_digital_min_lfas=0_0&search_digital_max_lfas=0_0
我想要在=
之后定義的每個變量,並且我想用_
分割變量。
一個較小的請求是這樣的-
?variable1=1_2_3_4&variable2=string
我想要的是以下內容:
{"variable1":[1,2,3,4], "variable2":"string"}
我為此構建了一個簡單的 function 之前使用urllib
:
import sys
import urllib.parse
def parseGetUrl(url):
result = {}
for data in url.split("&"):
key, val = urllib.parse.unquote(data).split("=")
if val.find('_') != -1:
val = val.split('_')
result[key] = val
return result
if __name__ == "__main__":
url = sys.argv[1][1:] # Gets argument then removes ?
parsedData = parseGetUrl(url)
print(parsedData)
您需要將 url 包含在引號內( "
)
python3 app.py "?goal=102&value=1_0_0_0"
請注意,根據您使用urrlib
的 python 版本,可能會引發錯誤:
# python 3
import urrlib.parse
...
key, val = urllib.parse.unquote(data).split("=")
# python 2
import urllib
...
key, val = urllib.unquote(data).split("=")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.