获取URL请求中值的参数名称
我有一个用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']