2010-11-29 2 views
1

phpを使用してウェブサイトのインバウンドおよびアウトバウンドリンクの合計no.ofを見つける方法を教えてください。phpを使用してウェブサイトのインバウンドおよびアウトバウンドリンクの合計no.ofを見つける方法は?

+1

ワールドワイドで、全世界のサーバー全体ですか?どうしたらいいですか? – aefxx

+0

これはあなたにとって便利だと思います。それはインバウンドおよびアウトバウンドのリンクチェッカーの総数を見つけるためのものです。 [ここをクリック](http://www.phphunger.com/2012/06/inbound-and-outbound-links-checker.html) – phphunger

答えて

1

インバウンドリンク

ためにあなたのドメインまたは "/"

で始まる正規表現

  • フィルタのリンクを使用して、すべてのリンクのWebページ
  • 解析のため外部へのリンク

  • 0

    PHPは、ページのインバウンドリンクを簡単なアクションで判断できません。すべての着信ビジターを監視し、そのリファラーが何であるかをチェックするか、またはそのサイトを指すリンクについてインターネット全体を解析する必要があります。最初の方法は使用されないリンクを見逃してしまい、2番目の方法はGoogleに委ねるのが一番です。

    一方、サイトからのアウトバウンドリンクは実行可能です。あなたはページを読み込んで、テキストを分析して、正規表現とのリンクを集め、合計を集計することができます。

    1

    を解析するには、あなたはここで、いくつかは示唆されているとして、ウェブサイトのHTMLコードを解析する必要があります。

    インバウンドリンクの場合は、Googleカスタム検索APIを使用して、Googleに直接リクエストを送信して、あなたのIPを禁止することができます。検索api hereを見ることができます。ここで私は、このAPIのための私のコードで使用機能は次のとおりです。

    function doGoogleSearch($searchTerm) 
        { 
        $referer = 'http://your-site.com'; 
        $args['q'] = $searchTerm;   
        $endpoint = 'web'; 
        $url = "http://ajax.googleapis.com/ajax/services/search/".$endpoint; 
    
        $args['v'] = '1.0'; 
        $key= 'your-api-key'; 
    
    
        $url .= '?'.http_build_query($args, '', '&'); 
    
        $ch = curl_init(); 
        curl_setopt($ch, CURLOPT_URL, $url); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);   
        curl_setopt($ch, CURLOPT_REFERER, $referer); 
        $body = curl_exec($ch); 
        curl_close($ch); 
        //decode and return the response 
        return json_decode($body); 
        } 
    

    としてこの関数を呼び出した後:$result = doGoogleSearch('link:site.com')、変数$result->cursor->estimatedResultCountは、返される結果の数を持っています。

    +1

    おかげでね。あなたは私に正確な答えをくれました。私はあなたに戻ってきます。ありがとう。 –

    +0

    私のlocalhostサーバー内でこのコードを実行している場合、referer変数に入れたいものはありますか? –

    +0

    それはうまくいきました。実際には、私はあなたがそれをエンコードする前にcurl_exec()からjsonコンテンツを得ました。私はそのデータのJsonフォーマットでurlのすべての値を取得したいと思います。 –

    0
    function getGoogleLinks($host) 
    { 
    
        $request = "http://www.google.com/search?q=" . urlencode("link:" . $host) ."&hl=en"; 
    
        $data = getPageData($request); 
        preg_match('/<div id=resultStats>(About)?([\d,]+) result/si', $data, $l); 
        $value = ($l[2]) ? $l[2] : "n/a"; 
        $string = "<a href=\"" . $request . "\">" . $value . "</a>"; 
        return $string; 
    } 
    //$host means the domain name 
    
    +0

    '&amp'は '&amp'に変更する必要があります(つまり、スペースがない場合はb/w&amp) –

    関連する問題