1

我正在修改一个简单的 php 爬虫脚本。

它使用的模块之一是将相对 url 转换为绝对 url。

为此,我需要找到一种方法来确定给定 url 的基本 href。否则我最终会得到一堆错误转换的链接。

我需要一个简单的函数来检查一个 url 是否有一个基本的 href 标记,如果有,就返回它。

谢谢

4

3 回答 3

0

我不知道你到底是什么意思,但parse_url会给你很多信息,比如主机名、查询字符串等。

如果我对您的理解正确,您将不知道您的网址中是否有 http。parse_url 返回的信息的方案部分是你的朋友。如果 scheme 为空或与 http 不同,您就知道您的 URL 中没有 http。

在爬虫内部,您开始爬取特定页面,如果我理解您的问题正确,您可以解析该 HTML。只需根据 parse_url 提供的信息构造基本 URL(不带路径),我看不出任何问题。

于 2012-04-03T10:16:16.053 回答
0

我需要一个简单的函数来检查一个 url 是否有一个基本的 href 标记,如果有,就返回它。

URL 不能有基本的 href 标记,因为那是 HTML 标记。它可能在您从该 URL 检索的 HTML 中定义。如何阅读可以在这个问题上找到。

于 2012-04-03T10:17:59.193 回答
0

parse_url()将 URL 拆分为多个部分。你可以从中得到你需要的东西。

于 2012-04-03T10:15:42.347 回答