1

awstats では、自分のウェブサイトを見つけるために使用されたすべてのキーワードとフレーズを含むテーブルを取得します。これを自分でキャプチャしたいのですが、各検索エンジンの URL は異なる形式になっています。Google がリファラーの場合、クエリ文字列の変数 q を検索語として使用できます (例: google.com?q=my+keywords)。ただし、別の検索エンジンでは、searchengine.com?search=my+keywords の形式になっている場合があります。

検索キーワードを特定する一般的な方法はありますか? または、検索エンジンごとに正規表現/フィルターを作成する必要がありますか?

4

2 に答える 2

4

1 つの可能性は、参照 URL ( $_SERVER['HTTP_REFERER']) を取得し、その中のキーワードを解析することです。

たとえば、次の Google URL を確認してください (「スタック オーバーフロー」を検索してください)。

http://www.google.com/search?hl=en&q=stack+overflow&aq=0&oq=stack+over&aqi=g10

GET 変数の値には、q+ 記号で区切られたキーワードが保持されます。

于 2009-08-28T23:09:20.543 に答える
0

常に追加する必要がありますが、これは google、yahoo、bing、ask、および MSN (Bing と同じ) からキーワードを削除する必要がある REGEX です。間に + を残していますが、ここから始めるのが良いでしょう:

.*(\?p=|\?q=|&q=|\?s=)([a-zA-Z0-9 +]*)(&toggle=|&ie=utf-8|&FORM=|&aq=|&x=|&gwp).
于 2010-12-14T00:02:19.833 に答える