获取URL请求中值的参数名称

4 投票
1 回答
2977 浏览
提问于 2025-04-16 22:07

我有一个用Python写的App Engine网页应用,我是通过这个POST网址来访问它的:http://localhost:8087/moderate?5649364211118945661=on

我想知道怎么才能获取参数的名字——不是,也就是说,我想要的是所有包含on值的参数名字的列表。

比如,在下面这个网址中:

http://localhost:8087/moderate?5649364211118945661=on&23984729386481734=on&456287432349725=on&6753847523429875=off

我该怎么提取出这些:

['5649364211118945661', '23984729386481734', '456287432349725']

非常感谢。

1 个回答

9

使用 urlparse,详细信息可以查看这个链接:http://docs.python.org/library/urlparse.html

import urlparse
url = urlparse.urlparse('http://localhost:8087/moderate?5649364211118945661=on&23984729386481734=on&456287432349725=on&6753847523429875=off')
query = urlparse.parse_qs(url.query)
print [key for key, value in query.iteritems() if value == 'on']

如果你是在讨论 Google App Engine 上接收到的 URL,可以使用

args_on = [arg for arg in self.request.arguments() if self.request.get(arg) == 'on']

撰写回答