0

大家好,我被困在这里,我需要一个包含任何特定域的反向链接的所有域的列表。任何人都可以帮助我吗?请为我提供一些链接或一些 api 程序以获取所有反向链接。我在 alexa 上搜索过,他们提供了反向链接详细信息,但没有任何 api 请求。我有一个 php 脚本来获取它具有该域的所有反向链接计数的任何域的排名但我同时需要所有域名。

   $url="msn.com";
$xml = simplexml_load_file('http://data.alexa.com/data?cli=10&dat=snbamz&url='.$url);
$rank=(int)$xml->SD[1]->POPULARITY->attributes()->TEXT;
$web=(string)$xml->SD[1]->POPULARITY->attributes()->URL;
$backlink=(int)$xml->SD[0]->LINKSIN->attributes()->NUM;
echo $web." has Alexa Rank ".$rank." has backlink: ".$backlink;
4

1 回答 1

1

希望这对你有点用。我是从互联网世界找到的。

function check_back_link($remote_url, $your_link) {
  $match_pattern = preg_quote(rtrim($your_link, "/"), "/"); 
  $found = false;
  if($handle = @fopen($remote_url, "r")){
    while(!feof($handle)){
      $part = fread($handle, 1024);
      if(preg_match("/<a(.*)href=[\"']".$match_pattern."(\/?)[\"'](.*)>(.*)<\/a>/", $part)){
        $found = true;
        break;
      }
    }
    fclose($handle);
  }
  return $found;
}

正在使用的函数示例。

if(check_back_link('http://www.google.com','http://www.yahoo.com')){
  echo 'link found';
}else{
  echo 'link NOT found';
};
// this prints 'link NOT found', unfortunately...

用 MSN 更新

function msn_backs($url){ 
    $site = fopen('http://search.live.com/results.aspx?q=link%3A'.urlencode($url),'r'); 
    while($cont = fread($site,1024657)){ 
        $total .= $cont; 
    } 
    fclose($site); 
    $match_expression = '/<h5>Page 1 of (.*) results<\/h5>/Us'; 
    preg_match($match_expression,$total,$matches); 
    return $matches[1]; 
}
于 2013-03-27T14:27:07.353 回答