Python 如何从URL中提取城市、地区、国家?德扬戈

Python 如何从URL中提取城市、地区、国家?德扬戈,python,django,url,parameters,Python,Django,Url,Parameters,“我的搜索”字段返回如下内容: 如何提取城市、地区、国家。我已经阅读了这份文件: 这个问题: 但不完全确定如何将它们分开。使用django请求对象“domain/search/?city=vienna” 在 基于django类的视图: self.request.GET['city'] 在 django基于函数的视图 def get_something(request): return HttpResponse("%s" % request.GET['city'] ) python

“我的搜索”字段返回如下内容:

如何提取城市、地区、国家。我已经阅读了这份文件:

这个问题:


但不完全确定如何将它们分开。

使用django请求对象“domain/search/?city=vienna”

基于django类的视图

self.request.GET['city']
django基于函数的视图

def get_something(request):
    return HttpResponse("%s" % request.GET['city'] )
python 2.7

>>> from urlparse import urlparse, parse_qs
>>> u = urlparse('http://localhost:8000/search/?city=New+York%2C+NY%2C+United+States')
>>> q = parse_qs(u.query)
>>> q['city']
['New York, NY, United States']
>>> q['city'][0].split(', ')
['New York', 'NY', 'United States']

只需在Django视图函数中。
request
对象有一个
request.GET
属性

def my_view(request):
    crc = request.GET.get(city, None)

    if crc:
        city, region, country = crc.split(',')

    # ...

如何“分离”什么?当您使用Django并且可以简单地访问
请求时,为什么要使用
urlparse
?您的代码在哪里?你到底在哪一步?你能得到网址吗?提取查询参数?解码查询参数值中的
%2C