人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

アクセス解析についてお聞きします。
あるページからのリンク先(外部へのリンクを含む)を調べるにはどのような方法がありますでしょうか。
リンク元の解析ならリファラで済むのですが、
リンク先を知る方法がわかりません。
HTMLへのタグの埋め込みやCGIなど、どのような方法でもご存知の方法を教えていただければ幸いです。
よろしくお願い致します。

●質問者: mitwui
●カテゴリ:コンピュータ
✍キーワード:CGI HTML アクセス解析 タグ リファラ
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● amagami
●15ポイント

http://www.hatena.ne.jp/

はてな

URLはダミーです。


そのページのリンクを全て

<a href=”link.cgi?url=リンク先URL”>リンク先の名前</a>

としておき、link.cgiで urlをGETします。後はLocationをurlに変更すればOKかと。

◎質問者からの返答

ありがとうございます。


2 ● andi
●15ポイント

http://www.yahoo.co.jp/

Yahoo! JAPAN

AサイトからBサイトへ移動するアンカータグに、アクセス解析用のプログラムを挟みます。


たとえば

<a href=”http://hogefuga/redirect.cgi?http://www.yahoo.co.jp/”>Yahoo!</a>

というリンクを作成し、redirect.cgiでリンク先の記録、リンク先へのリダイレクトを行います。

◎質問者からの返答

ありがとうございます。


3 ● english
●20ポイント

http://www.parkcity.ne.jp/~chaichan/src/javasc13.htm

このサイトは移動しました

自分のHTML内のリンク先をリストアップしたくて、かつ自分のHTML内にタグを埋め込めるなら、


---------ここから-----------------

<form name=myForm>

<textarea name=message cols=100 rows=10>

</textarea>

</form>

<script type=”text/javascript”>

<!--

function checkLink(){

for(var i=0;i<document.links.length;i++){

document.myForm.message.value += document.links[i].href + ”¥n”;

}

}

//-->

</script>

--------ここまで--------------


をHTML内の任意の箇所</body>タグの手前などに挿入します。


次に、bodyタグ内に

<body onLoad=”checkLink();”>

として、Javascriptを呼び出せば、テキストエリア内にリンク先がリストアップされます。


※hatenaのシステムの都合により、全角のダブルクォテーションが半角に変換されていますので、適宜読み替えてください。


http://bookmarklet.daa.jp/

JAVASCRIPT::BOOKMARKLET

また、自分のホームページでない場合には、少しややこしいですが、同じようにJavascriptで可能です。お気に入りにセットしたり右クリックメニューに登録しておくことで可能となります。参照URLのようなところで勉強してみてください。

http://mugi.cc/kommix.htm

Kommix

これはIEの右クリックを拡張して、リンクリストを作成するJscriptです。人が作ってくれています。

◎質問者からの返答

ありがとうございます。


4 ● jouno
●20ポイント

http://www.tohoho-web.com/js/index.htm

とほほのJavaScriptリファレンス

えーと、まず、どういうことをしたいのでしょうか。


まず、自分の持っているページの場合、ページにあるリンクは、自分で書いたものですから、知る必要はないですよね。


自分のページに来たユーザーについて、そのユーザーが、どこへ行ったかを知りたいのでしょうか。この場合、ブックマークなどで出て行った場合は、知る方法はないと思いますが、どのリンクを踏んだかはわかります。


CGIをつかうひとつの方法は、リンクをすべて自分の置いたcgiへのリンクにして、?以下のqueryでURLをわたして、そのCGIがリダイレクトするときに行き先も記録するようにすれば可能です。ランキングサイトなんかでつかわれている手法です。つまり、リンクを

<a href=”http://www.google.com”></a>を

<a href=”test.cgi?www.google.com”>google</a>にするわけです。


既成のページをすべてかきかえるのがめんどうであれば、javascriptで書き換えることもできます。


<script type=”text/javascript”>

<!--

function func(){

var n = document.links.length;

for(i = 0; i < n; i++){

url = document.links[i].href;

url = ”test.cgi?” + url;

}

}

//-->

</script>

<body onload=”func()”>

でいいはずです。チェックはしてないのですが。


よそのページに行って、自分が、そのページにあるリンクを知りたいのでしょうか。


この場合は、ブックマークレットが使えます。

http://level.s69.xrea.com/mozilla/index.cgi?id=20041016_WebDevel...

Firefox Extension: Web Developer 日本語版 - えむもじら

http://bookmarklet.daa.jp/

「ページ内リンクをすべて表示」のところですね。


firefoxならwebdevelopper機能拡張でも同じことができます。

◎質問者からの返答

ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ