2

我正在编写一个小型爬虫,在获取链接的同时提取大约 5 到 10 个站点我得到了一些这样的 url

../tets/index.html

如果是,/test/index.html我们可以添加基本 urlhttp://www.example.com/test/index.html

我能为这种网址做些什么。

4

3 回答 3

1

像这样的网址是相对网址。“..”表示“父目录”,而“.” 仅表示“此目录”,如 bash。例如,如果您正在查看此页面:http://www.someserver/test/foo/bar.html,并且其中有一个这样的 url:“../baz/foobar.html”,它将实际上指向http://www.someserver/test/baz/foobar.html我认为。只是测试。

于 2010-09-06T15:30:07.233 回答
0

看看这个URL Normalization Wikipedia 页面。

于 2010-09-08T09:40:06.387 回答
0

用于dirname()获取基本目录,删除..使用substr()并将其附加到那里。像这样:

<?php
$url = "../tets/index.html";
$currentURL = "http://example.com/somedir/anotherdir";
echo dirname($currentURL).substr($url, 2);
?>

这输出:

http://example.com/somedir/tets/index.html

于 2010-09-06T15:31:24.273 回答