Puoi eseguire query sui dati della Ricerca Google per sapere con quale frequenza la tua proprietà viene visualizzata nei risultati della Ricerca Google, con quali query, su desktop o smartphone, e molto altro ancora. Puoi utilizzare i risultati per migliorare le prestazioni della ricerca della tua proprietà, ad esempio:
- Scopri come cambia il traffico di ricerca nel tempo, da dove viene il sito e quali query di ricerca hanno maggiori probabilità di mostrare la tua proprietà.
- Puoi sapere quali query vengono cercate su smartphone e utilizzare queste informazioni per migliorare il tuo targeting per dispositivi mobili.
- Puoi scoprire quali pagine registrano la percentuale di clic più alta (e più bassa) nei risultati di ricerca di Google.
I dati delle query di ricerca vengono esposti utilizzando il metodo searchanalytics.query()
. Il metodo query()
espone tutti i dati disponibili nel report sul rendimento in Search Console. Prima di eseguire qualsiasi query, dovresti leggere la documentazione del report Analisi delle ricerche, per scoprire quali dati vengono esposti e cosa significa.
Questa pagina mostra come eseguire query comuni con parametri di richiesta diversi.
Per cominciare
Verificare la presenza di dati
Prima di eseguire una query, devi verificare la presenza di dati in questo intervallo di tempo. Ometti filtri, ordinamento, limiti di righe e qualsiasi altro parametro tranne data di inizio, data di fine e "data" come unica dimensione.
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['date'] }
Uscita
python search_analytics_api_sample.py 'https://www.example.com/' '2015-05-01' '2015-05-15' Available dates: Keys Clicks Impressions CTR Position 2015-05-01 22823.0 373911.0 0.0610385893969 8.1829472789 2015-05-02 16075.0 299718.0 0.0536337490574 8.14173322924 2015-05-03 18794.0 337759.0 0.055643224903 8.07772405769 2015-05-04 31894.0 468076.0 0.0681385074219 7.4104611217 2015-05-05 34392.0 482919.0 0.071216912153 7.20689805123 2015-05-06 35650.0 484353.0 0.0736033430164 7.11683214515 2015-05-07 33994.0 465812.0 0.0729779395979 6.91755472165 2015-05-08 27328.0 413007.0 0.0661683700276 7.22172747677 2015-05-09 16637.0 297302.0 0.0559599329974 8.01876206685 2015-05-10 19167.0 332607.0 0.0576265682923 7.87882696395 2015-05-11 35358.0 499888.0 0.070731843933 7.11701821208 2015-05-12 35952.0 486583.0 0.073886675038 6.80677294521 2015-05-13 34417.0 480777.0 0.071586203167 6.86552185317 2015-05-14 32029.0 457187.0 0.0700566726525 6.92575904389 2015-05-15 27071.0 415973.0 0.0650787430915 7.27105605412
Prova con date diverse
Abbiamo notato che sono disponibili dati per quel periodo di tempo, quindi è sicuro procedere. È importante eseguire questa operazione prima di eseguire la query effettiva. Ad esempio, l'esecuzione di questa stessa query per un intervallo diverso restituisce quanto segue:
python search_analytics_api_sample.py 'https://www.example.com/' '2015-06-01' '2015-06-15' Available dates: Keys Clicks Impressions CTR Position 2015-06-01 31897.0 468486.0 0.0680852789624 6.81207122518 2015-06-02 32975.0 460266.0 0.0716433540605 6.62655942433 2015-06-03 32779.0 459599.0 0.0713208688444 6.58126758326 2015-06-04 30116.0 435308.0 0.0691831990223 6.71409668557 2015-06-05 25188.0 380444.0 0.0662068530454 7.00998570092 2015-06-06 14829.0 272324.0 0.0544535186028 7.6309910254 2015-06-07 17896.0 318094.0 0.056260099216 7.56606223318 2015-06-08 33377.0 487274.0 0.0684973957158 6.77552260125 2015-06-09 33885.0 484241.0 0.0699754874123 6.70545451542 2015-06-10 32622.0 466250.0 0.0699667560322 6.64417372654 2015-06-11 31317.0 447306.0 0.0700124746818 6.61534832978 2015-06-12 25932.0 393791.0 0.065852190629 7.15718998149 2015-06-13 15451.0 275493.0 0.0560849095984 7.69994518917 2015-06-14 18358.0 318193.0 0.0576945438775 7.34048517724
Guarda attentamente e noterai che i dati terminano il 14; non i dati per il 15.
Ti consigliamo di utilizzare lo strumento Explorer API in modalità di modifica in formato libero per testare rapidamente le query (fai clic sulla freccia del menu a discesa a lato del campo del corpo della richiesta, quindi su "Editor in formato libero").
Una volta verificato l'intervallo di date valide, puoi iniziare a raggruppare in base ad altre dimensioni, aggiungere filtri, limiti di conteggio delle righe e così via:
Prime 10 query, ordinate per numero di clic, in ordine decrescente
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'rowLimit': 10 }
Uscita
Top Queries: Keys Clicks Impressions CTR Position seo 3523.0 270741.0 0.0130124362398 5.86615252215 hreflang 3207.0 5496.0 0.583515283843 1.10080058224 robots.txt 2650.0 23005.0 0.115192349489 4.30367311454 301 redirect 2637.0 7814.0 0.337471205529 1.621192731 googlebot 2572.0 6421.0 0.400560660333 1.15823080517 google seo 2260.0 11205.0 0.201695671575 1.38295403838 google sitemap 1883.0 4288.0 0.439132462687 1.21175373134 canonical url 1882.0 3714.0 0.506731287022 1.12762520194 sitemap 1453.0 22982.0 0.06322339222 3.78074144983
Prime 10 pagine, ordinate per numero di clic, in ordine decrescente
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['page'], 'rowLimit': 10 }
Uscita
Top Pages: Keys Clicks Impressions CTR Position https://www.example.com/21 10538.0 62639.0 0.168233847922 3.63031019014 https://www.example.com/65 9740.0 82375.0 0.118239757208 5.61003945372 https://www.example.com/15 9220.0 128101.0 0.0719744576545 5.32300294299 https://www.example.com/41 8859.0 426633.0 0.0207649197319 1.62309057199 https://www.example.com/53 8791.0 829679.0 0.0105956641062 14.4941887164 https://www.example.com/46 7390.0 82303.0 0.0897901656076 5.7723290767 https://www.example.com/27 7169.0 64013.0 0.111992876447 4.98709637105 https://www.example.com/80 6047.0 84233.0 0.0717889663196 4.10592048247 https://www.example.com/9 5886.0 59704.0 0.0985863593729 4.0897594801 https://www.example.com/8 5043.0 66869.0 0.0754161120998 4.57651527614
Prime 10 query in India, ordinate per numero di clic, in ordine decrescente
Tieni presente che l'operatore di filtro "uguale a" viene omesso, in quanto è l'operatore predefinito.
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'country', 'expression': 'ind' }] }], 'rowLimit': 10 }
Uscita
Top queries in India: Keys Clicks Impressions CTR Position googlebot 250.0 429.0 0.582750582751 1.0 search console 238.0 34421.0 0.00691438366114 1.00101682113 dns error 189.0 850.0 0.222352941176 1.38470588235 google seo 165.0 552.0 0.298913043478 1.04166666667 canonical url 141.0 282.0 0.5 1.0 301 redirect 132.0 557.0 0.236983842011 1.78276481149 google search console 126.0 16898.0 0.00745650372825 1.03929459108 robots.txt 117.0 1046.0 0.111854684512 3.9206500956 canonical tag 111.0 223.0 0.497757847534 1.0
Le prime 10 query mobile in India, ordinate per numero di clic, in ordine decrescente
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'country', 'expression': 'ind' }, { 'dimension': 'device', 'expression': 'MOBILE' }] }], 'rowLimit': 10 }
Uscita
Top mobile queries in India: Keys Clicks Impressions CTR Position search console 26.0 1004.0 0.0258964143426 1.00298804781 dns error 24.0 111.0 0.216216216216 1.27927927928 google seo 18.0 69.0 0.260869565217 1.02898550725 eliminar 16.0 134.0 0.119402985075 1.0 googlebot 11.0 24.0 0.458333333333 1.0 404 9.0 214.0 0.0420560747664 8.64018691589 robots.txt 9.0 40.0 0.225 4.025 google search console 8.0 438.0 0.0182648401826 1.04337899543 seo 8.0 111.0 0.0720720720721 4.96396396396
Esegui una query su una porzione di righe
Puoi eseguire query per una porzione specifica di righe specificando un numero di riga iniziale (in base a zero) e il numero di righe da restituire. Se viene specificato un numero di riga iniziale non valido, verrà restituito un errore, mentre se viene specificato un numero di righe superiore a quello disponibile, verranno restituite tutte le righe disponibili.
11-20 query principali su dispositivi mobili per l'intervallo di date, in ordine decrescente (in ordine decrescente)
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'device', 'expression': 'mobile' }] }], 'rowLimit': 10, 'startRow': 10 }
Uscita
Top 11-20 Mobile Queries: Keys Clicks Impressions CTR Position dns error 1220.0 15064.0 0.0809877854 3.13448726206 google seo 1161.0 7923.0 0.146535403 2.31479556195 sitemap 926.0 12478.0 0.0742106107 5.8130025067 googlebot 903.0 7822.0 0.115443621 4.6910285792 robots.txt 799.0 24868.0 0.0321296445 5.92759215963 404 520.0 12777.0 0.0406981295 5.80352636506 seo 506.0 2925.0 0.172991453 2.50413960996 search console 487.0 981.0 0.496432212 1.00036102455 canonical url 326.0 4087.0 0.0797651089 3.23664971157 301 redirect 261.0 3165.0 0.082464455 3.63074363869
Avere più di 25.000 righe
Se la tua query contiene più di 25.000 righe di dati, puoi richiedere dati in gruppi di 25.000 righe alla volta inviando più query e aumentando il valore startRow ogni volta. Conteggia il numero di righe recuperate; se visualizzi un numero di righe inferiore a quello richiesto, hai recuperato tutti i dati. Se la richiesta termina esattamente al limite dei dati (ad esempio, ci sono 25.000 righe e hai richiesto startRow=0 e rowLimit=25000), alla prossima chiamata riceverai una risposta vuota.
1-25.000 query da dispositivo mobile per l'intervallo di date, ordinate per numero di clic, in ordine decrescente
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'device', 'expression': 'mobile' }] }], 'rowLimit': 25000, 'startRow': 0 }
Principali 25.001-50.000 query da dispositivo mobile per l'intervallo di date, ordinate per numero di clic, in ordine decrescente
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'device', 'expression': 'mobile' }] }], 'rowLimit': 25000, 'startRow': 25000 }