从URL检索参数

给定如下URL,如何解析查询参数的值?例如,在本例中,我需要some\u key的值

/some\u path?some\u key=some\u value'

我在我的环境中使用Django;在请求对象上是否有可以帮助我的方法

我尝试使用self.request.get('some_key'),但它没有像我希望的那样返回值some_value

这不是Django所特有的,而是Python所特有的。有关Django特定的答案,请参阅@jball037中的此答案

Python 2:

导入URL解析
url='1〕https://www.example.com/some_path?some_key=some_value'
parsed=urlparse.urlparse(url)
捕获的_value=urlparse.parseqs(parsed.query)['some_key'][0]
打印捕获的U值

Python 3:

从urllib.parse导入urlparse
从urllib.parse导入parseqs
url='1〕https://www.example.com/some_path?some_key=some_value'
解析的url=URLPRASE(url)
captured_value=parse_qs(parsed_url.query)['some_key'][0]
打印(捕获的值)

parse_qs返回一个列表。[0]获取列表的第一项,因此每个脚本的输出都是某个值

下面是Python3的“parse_qs”文档

发表评论