Python的`urlparse`:将GET关键字添加到URL

Ram*_*hum 5 python url urlparse

我这样做:

urlparse.urljoin('http://example.com/mypage', '?name=joe')
Run Code Online (Sandbox Code Playgroud)

我得到了这个:

'http://example.com/?name=joe'
Run Code Online (Sandbox Code Playgroud)

虽然我想得到这个:

'http://example.com/mypage?name=joe'
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

jd.*_*jd. 5

你可以使用urlparse.urlunparse:

import urlparse
parsed = list(urlparse.urlparse('http://example.com/mypage'))
parsed[4] = 'name=joe'
urlparse.urlunparse(parsed)
Run Code Online (Sandbox Code Playgroud)


Ram*_*hum 1

我通过将 Python 2.6 的urlparse模块与我的项目捆绑在一起解决了这个问题。我还必须捆绑namedtuple中定义的内容collections,因为urlparse使用了它。