python urljoin目录不包含

时间:2014-02-10 06:01:34

标签: python regex urlparse

我想解决一些关于urlparse.urljoin的情况。 使用这个lib像

urljoin('http://xxxx.yyy/directory/','file.file')

给了我http://xxxx.yyy/directory/file.file但是如果我最后没有在网址中给斜杠,比如

urljoin('http://xxxx.yyy/directory','file.file')

给了我http://xxxx.yyy/file.file,这让我不得不写自动收集程序。 任何人都可以有解决方案来解决这个问题。我试图用正则表达式替换斜线并替换,但是当url完成时这些都不能正常工作

http://xxxx.yyy/zzzz/file.file

1 个答案:

答案 0 :(得分:0)

它的行为正确。如果您使用http://example.com/index.html并点击指向two.html的链接,则会以http://example.com/two.html结束。这就是相对URL的定义方式。

urljoin无法知道最后一个组件是否是目录。您可以尝试猜测,也许是通过查找.,并且只有在您认为它应该存在时才添加斜杠。