繁体   English   中英

在php中捕获搜索引擎关键字

[英]Capture search engine keywords in php

在awstats中,我得到一张表,其中包含用于查找我的网站的所有关键词和短语。 我想自己捕捉这个,但每个搜索引擎网址都采用不同的格式。 当google是引用者时,我可以使用查询字符串中的变量q作为搜索词(例如google.com?q=my+keywords),但是另一个搜索引擎可能具有searchengine.com?search=my+keywords格式

是否有识别搜索关键字的通用方法? 或者我是否必须为每个搜索引擎创建一个正则表达式/过滤器?

一种可能性是只获取引用URL( $_SERVER['HTTP_REFERER'] )并解析其中的关键字。

例如,查看此Google URL(搜索“堆栈溢出”):

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

q GET变量的值包含由+符号分隔的关键字。

我不得不一直添加它,但这里有一个REGEX,应该从google,yahoo,bing,ask和MSN(与Bing相同)中删除关键字。 它之间留下了+,但它应该是你开始的好地方:

.*(\?p=|\?q=|&q=|\?s=)([a-zA-Z0-9 +]*)(&toggle=|&ie=utf-8|&FORM=|&aq=|&x=|&gwp).

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM