2012-05-06 140 views
1

我正在我的网站上建立一个脚本,但发现自己有点困惑如何让这个工作以最少的代码很好。检查网站的链接使用PHP

基本上所有需要的就是这样我可以输入一个url为例如domain.com,它应该扫描该主页的链接指向我的域名,并检查是否指定rel =“nofollow”或如果链接没有rel =“nofollow”,则返回true;如果没有链接,则返回false,或链接为rel =“nofollow”。

我将如何去做这件事,或者我会从哪里开始。

我已经用google搜索了如何创建一个蜘蛛,但它的所有内容远远多于我想创建的基本脚本的很多信息和复杂性!

回答

1

你要求的并不像你想像的那么简单。要正确执行此操作,您需要使用DOM解析器,如DOMDocument

http://www.php.net/manual/en/class.domdocument.php

您可以使用它loadHTML()方法来解析要扫描通过网页。从那里,您可以使用其各种功能来查找您要查找的特定链接,并检查其属性以确保网址正确,并且您的rel="nofollow"就在那里。

我向你保证,最终,这不仅仅是一个字符串搜索你的网址容易。沿着盲目的搜索道路走下去会导致你的结果不准确,并且比你意识到的要麻烦得多。

0

看看http://simplehtmldom.sourceforge.net/.

// Create DOM from URL or file 
$html = file_get_html('http://www.google.com/'); 
// Find all links 
foreach($html->find('a') as $element) 
     echo $element->href . '<br>';