如何join绝对和相对的url?
我有url:
url1 = "http://127.0.0.1/test1/test2/test3/test5.xml" url2 = "../../test4/test6.xml"
如何获得url2的绝对url?
你应该使用urlparse.urljoin :
>>> import urlparse >>> urlparse.urljoin(url1, url2) 'http://127.0.0.1/test1/test4/test6.xml'
使用Python 3(其中urlparse重命名为urllib.parse ),您可以使用它如下 :
>>> import urllib.parse >>> urllib.parse.urljoin(url1, url2) 'http://127.0.0.1/test1/test4/test6.xml'
es = ['http://127.0.0.1', 'test1', 'test4', 'test6.xml'] base = '' map(lambda e: urlparse.urljoin(base, e), es)
>>> from urlparse import urljoin >>> url1 = "http://www.youtube.com/user/khanacademy" >>> url2 = "/user/khanacademy" >>> urljoin(url1, url2) 'http://www.youtube.com/user/khanacademy'
简单。