为什么Python的urlparse.parse_qs()会在分号上拆分参数

时间:2011-03-01 18:14:13

标签: python http get query-string

我正在用Python编写一个测试脚本来检查我的PHP应用程序的输出,我遇到了Python urlparse.parse_qs()函数的问题。 GET字符串分隔符(AFAIK)是一个&符号。该函数(据我所知)应该将GET字符串拆分为Python字典,以便count=2&offset=5&userID=1的输出应为:

{'count': ['2'], 'userID': ['1'], 'offset': ['5']}

确实如此。但是当我尝试在GET(用分号分隔)中传递CSV时,例如ids=5;15;3,我得到以下内容:

[('3', ''), ('15', ''), ('ids', '5')]

我认为有效输出应如下所示:

{'ids': ['5;15;3']}

我做错了什么?这条线看起来像这样:

args = urlparse.parse_qs(sys.argv[2], keep_blank_values=True)