找传奇、传世资源到传世资源站!

php获取指定URL页面中的所有链接

2021.5.16 技术教程 928 编辑

php获取指定URL页面中的所有链接 技术教程-第1张

今天给大家分享一篇技术文章,教大家如何在php中获取到指定URL页面中的所有链接,即所有a标签的href属性:

// 获取链接的HTML代码
$html = file_get_contents('http://www.example.com');

$dom = new DOMDocument();
@$dom->loadHTML($html);

$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate('/html/body//a');

for ($i = 0; $i < $hrefs->length; $i++) {
   $href = $hrefs->item($i);
   $url = $href->getAttribute('href');
   echo $url.'<br />';
}

这段代码会获取到所有a标签的href属性,但是href属性值不一定是链接,我们可以在做个过滤,只保留http开头的链接地址:

// 获取链接的HTML代码
$html = file_get_contents('http://www.example.com');

$dom = new DOMDocument();
@$dom->loadHTML($html);

$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate('/html/body//a');

for ($i = 0; $i < $hrefs->length; $i++) {
   $href = $hrefs->item($i);
   $url = $href->getAttribute('href');
   
   // 保留以http开头的链接
   if(substr($url, 0, 4) == 'http')
      echo $url.'<br />';
}

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复