matomo-org / matomo

Empowering People Ethically with the leading open source alternative to Google Analytics that gives you full control over your data. Matomo lets you easily collect data from websites & apps and visualise this data and extract insights. Privacy is built-in. Liberating Web Analytics. Star us on Github? +1. And we love Pull Requests!
https://matomo.org/
GNU General Public License v3.0
19.92k stars 2.66k forks source link

Google Advanced Search support #1370

Closed halfdan closed 13 years ago

halfdan commented 14 years ago

Saw the following URL in my referer list:

google.co.uk

Problem: The search parameter isn't &q=keywork but &as_q - Trying to figure out where this comes from brought me to this page. The "advanced search" from google doesn't use &q=. It is even possible to combine these parameters like:

&as_q=test1&as_epq=test2&as_oq=foo+bar+baz

My idea to include this would be to allow KeywordParameter to be an array in SearchEngines.php.


I found that "google.kg" (Kyrgyzstan) is not included in the list of search engines.

halfdan commented 14 years ago

Attachment: checkGoogleDomains.php

halfdan commented 14 years ago

Attachment: missing_list.txt

halfdan commented 14 years ago

Attachment: SearchEngines.php.patch

anonymous-matomo-user commented 14 years ago

that is the official list of google domains http://www.google.com/supported_domains maybe some more are missing

halfdan commented 14 years ago

Oh well.. ignore my suggestion. KeywordParameter already allows arrays. We should therefore adjust the setting for all Google entries to:

array(
  'q',
  'as_q',
  'as_oq',
  'as_epq'
);

hebbet: Thank for the link. Just wrote a little script to check if any other TLDs are missing. (see Attachment)

While writing the script I noticed the entry for google.fr:

'www.google.fr.' => ..

That looks like a typo to me (www.google.fr is in the list).

matt/vipsoft: Let me know if we should include the other parameters for Google in the list and I'll prepare a patch.

robocoder commented 14 years ago

The problem is that these advanced query parameters (as_q=ALL_THESE_WORDS, as_epq=EXACT_WORDING, as_oq=OR1+OR2+OR3, and as_eq=UNWANTED) can all appear in the referrer URL.

halfdan: sure, a patch would be great. Don't forget to change Piwik_Common::extractSearchEngineInformationFromUrl() and please add some unit tests.

halfdan commented 14 years ago

vipsoft: How do you think this should be handled? Should I just build a string from all keywords provided? This would lead to false reports e.g. in case of as_eq. Any suggestions?

mattab commented 14 years ago

no problem to add missing google URLs, please provide patch

mattab commented 14 years ago

Replying to vipsoft:

The problem is that these advanced query parameters (as_q=ALL_THESE_WORDS, as_epq=EXACT_WORDING, as_oq=OR1+OR2+OR3, and as_eq=UNWANTED) can all appear in the referrer URL.

I think that's fine, as long as if 'q' is found, it has priority over other variables.

mattab commented 14 years ago

actually it would be an issue... to solve this issue properly, we would need to be able to construct the query string from the list of possible parameters (q, as_q, as_qe, etc.) which is I believe undocumented by google, and probably undesirable considering the low traffic. I vote for won't fix..

robocoder commented 14 years ago

Replying to matt:

I vote for won't fix..

But it would be nice-to-have. I'll reserve judgement until I've seen a patch.

halfdan commented 14 years ago

matt: SearchEngine patch is attached.

vipsoft: I'll need to think this through. I'm not sure yet on how to visualize the combined data (e.g. as_eq=UNWANTED should not appear as "keyword" because keywords usually suggest that the page was found using that keyword and not by ignoring it).

I'm mabye postposing the patch until after 0.6.2 as I'll focus on other work first. Feel free to move the ticket to 0.8 when necessary.

mattab commented 14 years ago

as_eq=UNWANTED is equivalent, I believe, to using minus: "keyword -notThisKeyword"

mattab commented 14 years ago

(In [2212]) Refs #1370 adding google URLs thanks halfdan!

robocoder commented 14 years ago

I'll keep this ticket open. In the meantime, I created #1381 to record the addition of the missing Google URLs/domains, for the upcoming 0.6.2 changelog.

mattab commented 14 years ago

moving it to later milestone.

robocoder commented 14 years ago

At the same time, I propose we add some code to parse out the keywords when the referer is webcache.googleusercontent.com.

robocoder commented 14 years ago

Opening a separate ticket for webcache.googleusercontent.com. #1692

robocoder commented 14 years ago

(In [3118]) fixes #1370 - constructs the equivalent q= query from the advanced search parameters