将部分URL从已分析页面转换为完整URL

时间:2016-02-18 02:15:44

标签: python urlparse

我正在浏览一个包含不完整网址的网页,我需要将它们转换为完整的HTTP网址,例如,原始地址为:http://www.example.com/dir1/dir1/,索引文件包含以下链接:

/page.htm
page.htm
../page.htm
../../page.htm

我需要将它们转换为

http://www.example.com/page.htm
http://www.example.com/dir1/dir2/page.htm
http://www.example.com/dir/page.htm
http://www.example.com/page.htm

我不确定如何识别../并从原始地址对其进行评估,urlparse(temp_href).geturl()不起作用。

如何正确转换它们?

1 个答案:

答案 0 :(得分:2)

urljoin应该为你做到这一点。

from urlparse import urljoin

base = "http://www.example.com/dir1/dir1/"
print urljoin(base, "/page.htm")
print urljoin(base, "page.htm")
print urljoin(base, "../page.htm")
print urljoin(base, '../../page.htm')