2013-07-31 35 views
7

我一直在試圖弄清楚如何爲特定域拉取反向鏈接。我瞭解你只需搜索link:domain.com如何使用PHP中的谷歌API計算谷歌反向鏈接

我知道有多個帖子與這個帖子非常相似,但是每個帖子都使用已停用的舊API。 Google搜索API已被Google自定義搜索API取代,並且不會像Google搜索一樣返回任何與搜索結果相同的結果。

除自定義搜索以外是否還有其他API可以讓我獲得結果。我聽說他們有一些付費服務,如果我能找到一些鏈接或文檔,我會很樂意使用這些服務。

任何幫助,非常感謝。

回答

4

我不知道,有一種方法可以做到你想要谷歌很容易的。使用鏈接搜索(link:yourdomain.com)只會返回一小部分鏈接到您的網站。如果您直接使用Google搜索鏈接,則可以在實踐中看到這一點。一個更好的例子來自搜索site:yourdomain.com。單單搜索不會顯示您網站上的所有網頁。 Google喜歡爲整個數據集保持拉開狀態。

你真正需要的是爲你編制索引數據並讓你將其撤回(大概是爲了SEO目的)的人。我知道的最好的地方是Mozscape API。他們做自己的爬行並建立自己的索引。他們有一個免費的等級和相同的數據集的權力Open Site Explorer。另一個潛在資源是Ahrefs,但您必須成爲使用其系統的訂戶。

0

搜索Google API仍處理這種搜索。

使用以下函數,然後使用提供的示例。

<?php 
function load_content ($url, $auth = true,$auth_param) { 
     $curl = curl_init(); 

     if ($auth){ 
       curl_setopt($curl, CURLOPT_USERPWD,$auth_param); 
     } 
     curl_setopt($curl, CURLOPT_URL, $url); 
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
     curl_setopt($curl, CURLOPT_TIMEOUT, 3); 
     $content = curl_exec($curl); 
     //$header = curl_getinfo($curl); 
     curl_close($curl); 
     $res['msg'] = "";//$header; 
     $res['content'] = $content; 
     return $res; 
} 

function google_indexed($url){ 
     $html = load_content ($url,false,""); 
     return $html; 
} 


?> 

例子:

<?php 
$domain = "google.com"; 
$indexed["google"] = google_indexed("http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=site:$domain"); 

print_r($indexed["google"]); 
?> 
+0

這對我不起作用,因爲我們處理大量網站並僞造你的用戶代理從來不是一個好的做法 – James

+0

編輯代碼以反映刪除用戶代理。 –

+0

這不是我評論的重點。如果您使用的量低,這是可以的。谷歌強烈不贊成這種批量使用。這就是爲什麼我問是否有API方法,因爲我們每天會做大約2000次查詢。 – James