- ベストアンサー
相互リンクされているかチェックできるCGI
お世話になります。 相互リンクしている場合 相手の相互リンクページに、自分のサイトのURLが、ちゃんとリンク掲載されているかチェックできるようなCGIコードはないでしょうか? 例えば、自分のリンクして欲しいURLと、相手の、リンク集のURLを指定すると、ソースの<a href=自分のサイトURL>を検索して、あれば「あなたのURLはこのページに存在します」なければ「あなたのURLはこのページには存在しません」という表示がされるとか・・・ えっ!相手のページ見れば分かる・・・沢山あると1件づつ見ていくの大変なんです。相互リンクしてくれているサイトを複数登録しといて、ここには「ある」ここには「ない」みたいに一括調査したいのです。 宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ソケット関数を使い(HTTPを読み出せればOK)、他のページを取得して、ソースから自分の所のURLを抽出すればできます。 ただ、普通にブラウザでアクセスして中身を確かめると言うのをプログラムでやらせるだけなので、複数ある場合は処理時間(というよりアクセス時間)が結構かかります。 そのようなCGIが配布されているは見たことがありませんが、探せばでてくるかもしれません。 しかし、このような特殊なCGIは自作しないと細部が気に入らないとかがよくあります。
その他の回答 (2)
- happymonmon
- ベストアンサー率0% (0/5)
ご使用のサーバがレンタルサーバだとすると、CGIの実行時間に制限があるのが普通なので、まず、それを調べられた方がよいです。数秒程度のところもあります。 その場合御希望の処理をCGIで行なうのは現実的ではありません。100とか200とか多くのリンク先をチェックしたいとすると、処理におそらく数分かかると考えられます。 御希望の処理はサーバ側でなく、普通クライアント側でやります。なので、CGIとして公開されている可能性は非常に低いと思われます。
お礼
なるほど、ありがとうございます。
- oharanaomi
- ベストアンサー率11% (43/385)
私もよくリンクしてくれているHPを探します。 確実ではないですが、 例えば http://×××.co.jp/ というアドレスのHPだとして、グーグルで site:×××.co.jp 自分のHP名 で検索すると、自分のHP名があるページを探せます。自分のHP名があれば大抵リンクページのはずです。 あと逆リンク探しのページもあります http://www2s.biglobe.ne.jp/~navi-do/computer/search-refer.html ただ残念ながら、どちらも確実ではないです。
お礼
そうですねぇ~。私もよくlink:×××.co.jpで検索して、リンクしているページを見たりするんですが、全部は表示しないようです。Yahooは比較的ページランクの低いものも表示してくれますが、Googleの場合一説にはページランク4以上じゃないと被リンクページを表示してくれないようです。ありがとうございます。
お礼
なるほど、作ろうと思えば作れるけど、1件づつアクセスして、ソースから<a href=http://・・・>という文字列を検索していくので、かなり時間がかかるのですね。了解しました。ありがとうございます。