對我來說這似乎有點奇怪,但儘管每個人都知道新的谷歌搜索網址(請參閱Google using # instead of search? in URL. Why?),但沒有人對HTTP_REFERER有任何問題。無法解析新的Google網址-HTTP_REFERER不包含任何參數
我使用引用來解析搜索查詢的谷歌字符串(& q =),但因爲這是所有哈希標記它不會被髮送到服務器,我得到的是「http://www.google.de/」。
那麼你知道一種獲取用戶搜索的查詢的方法嗎?
對我來說這似乎有點奇怪,但儘管每個人都知道新的谷歌搜索網址(請參閱Google using # instead of search? in URL. Why?),但沒有人對HTTP_REFERER有任何問題。無法解析新的Google網址-HTTP_REFERER不包含任何參數
我使用引用來解析搜索查詢的谷歌字符串(& q =),但因爲這是所有哈希標記它不會被髮送到服務器,我得到的是「http://www.google.de/」。
那麼你知道一種獲取用戶搜索的查詢的方法嗎?
由於2011年年底Google的安全性變化,當由已登錄的Google用戶執行搜索時,不再可能發生這種情況。請參閱:
由於有多個Q的查詢字符串,你必須在全球範圍內符合「Q」參數,並採取最後一個:
/[?|&|#]q=([^&|^#]+)/ig
擺脫「網站:」搜索(還有其他的,但我沒有做它們)
/[\+|?|&]?site:([^&|^#])+/g, '');
然後分析結果。
/[\w^'\(\)\{\}]+|"[^"]+"/g
這一直是我運作良好。
其實,還是有一些清理後的事情。我一直在用JavaScript做這個,沒有負面展望的好處。也許別人可以啓發我? query = query.replace(/(\'|「)/,'\ $ 1'); query = query.replace(/ \ + site:(。+)$ /,''); // now完成上述操作,但是在此處備份 query = query.replace(/^[?|&] q = /,''); //因爲Google搜索是全局的,所以必須將其刪除 query = query.replace (/ ^&query = /,''); //同上lycos' – 2011-07-26 02:13:55