Python 2.7 我可以将dict转换为url吗?
例如,我有以下url模式:Python 2.7 我可以将dict转换为url吗?,python-2.7,url,urlparse,Python 2.7,Url,Urlparse,例如,我有以下url模式: url_pattern = { "scheme": "http", "netloc": "for.example.com", "path": "/ex1", "params": "", "query": a=b&c=d, "fragment": "" } 这就像urlparse.urlparse(“http://for.example.com/ex1?a=b&c=d)。我可以从目录中获取url吗 def get
url_pattern = {
"scheme": "http",
"netloc": "for.example.com",
"path": "/ex1",
"params": "",
"query": a=b&c=d,
"fragment": ""
}
这就像urlparse.urlparse(“http://for.example.com/ex1?a=b&c=d)
。我可以从目录中获取url吗
def geturl(pattern):
return pattern["scheme"] + "://" + pattern["netloc"] + pattern["path"] + ("?" if pattern["query"]) + pattern["query"]
应该可以很好地工作。
urlparse
生成一个ParseResult
对象。因此,只需构造一个ParseResult
对象,并使用geturl()
方法生成URL
>>> url_pattern = {
"scheme": "http",
"netloc": "for.example.com",
"path": "/ex1",
"params": "",
"query": "a=b&c=d",
"fragment": ""
}
>>> from urlparse import ParseResult
>>> ParseResult(**url_pattern).geturl()
'http://for.example.com/ex1?a=b&c=d'
对使用
urllib.urlencode()
。