python web编程---geturl(),urlunparse()

1 反解析

可以利用一些方法将分解的url的哥哥部分重新组装在一起,形成一个串。解析的url对象有一个geturl方法。

代码:

from urlparse import urlparse
url = 'http://user123:pwd@NetLoc:80/path;param?query=arg#frag'
print 'orig : ',url
parsed = urlparse(url)
print 'parsed :',parsed.geturl()
结果:

orig :  http://user123:pwd@NetLoc:80/path;param?query=arg#frag
parsed : http://user123:pwd@NetLoc:80/path;param?query=arg#frag
[Finished in 0.3s]
可以发现,两个url是相同的,注意:geturl()只适用于urlparse()或者urlsplit()返回的对象。

2 利用urlunparse()可以把包含串的普通元组重新组合为一个url

from urlparse import urlparse,urlunparse
url = 'http://user123:pwd@NetLoc:80/path;param?query=arg#frag'
print 'orig : ',url
parsed = urlparse(url)
print 'parsed :',type(parsed),parsed
t = parsed[:]
print 'tuple:',type(t),t
print 'new:',urlunparse(t)
结果:

orig :  http://user123:pwd@NetLoc:80/path;param?query=arg#frag
parsed :  ParseResult(scheme='http', netloc='user123:pwd@NetLoc:80', path='/path', params='param', query='query=arg', fragment='frag')
tuple:  ('http', 'user123:pwd@NetLoc:80', '/path', 'param', 'query=arg', 'frag')
new: http://user123:pwd@NetLoc:80/path;param?query=arg#frag
[Finished in 0.3s]





你可能感兴趣的:(python,Web编程)