Vous pouvez exécuter des requêtes sur vos données de recherche Google pour voir à quelle fréquence votre propriété apparaît dans les résultats de recherche, avec quelles requêtes, depuis un ordinateur ou un smartphone, et bien plus encore. Vous pouvez utiliser ces résultats pour améliorer les performances de recherche de votre propriété, par exemple:
- Découvrez l'évolution de votre trafic de recherche au fil du temps, d'où il vient et quelles requêtes de recherche sont les plus susceptibles d'afficher votre propriété.
- Découvrez quelles requêtes proviennent de smartphones, et utilisez ces informations pour améliorer votre ciblage sur les mobiles.
- Déterminez sur quelles pages de nos résultats de recherche les internautes cliquent le plus (et le moins) souvent.
Les données des requêtes de recherche sont exposées à l'aide de la méthode searchanalytics.query()
. La méthode query()
expose toutes les données disponibles dans le rapport sur les performances de la Search Console. Avant d'exécuter des requêtes, vous devez
lire la documentation du rapport Analyse de la recherche pour savoir quelles données sont exposées et ce qu'elles signifient.
Cette page explique comment effectuer des requêtes courantes avec différents paramètres de requête.
Premiers pas
Vérifier la présence de données
Avant d'exécuter une requête, vous devez d'abord tester la présence de données pour cette période. Omettez les filtres, le tri, le nombre maximal de lignes et tout autre paramètre hormis la date de début, la date de fin et la seule dimension "date".
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['date'] }
Sortie
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
Essayer d'autres dates
Nous voyons que nous disposons de données pour ce segment de temps. Vous pouvez donc avancer en toute sécurité. Il est important de le faire avant d'exécuter votre requête réelle. Par exemple, l'exécution de la même requête pour une plage différente renvoie ce qui suit:
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
Regardez attentivement et vous remarquerez que les données se terminent le 14 ; aucune donnée pour le 15.
Il peut être utile d'utiliser l'explorateur d'API en mode Édition libre pour tester rapidement vos requêtes (cliquez sur la flèche déroulante située à côté du champ du corps de la requête, puis sur "Éditeur de format libre").
Une fois que vous avez vérifié la plage de dates valides, vous pouvez commencer à regrouper les données selon d'autres dimensions, en ajoutant des filtres, une limite du nombre de lignes, etc. :
10 principales requêtes, triées par nombre de clics, dans l'ordre décroissant
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'rowLimit': 10 }
Sortie
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
10 premières pages, triées par nombre de clics, dans l'ordre décroissant
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['page'], 'rowLimit': 10 }
Sortie
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
10 principales requêtes en Inde, triées par nombre de clics, dans l'ordre décroissant
Notez que l'opérateur de filtrage "est égal(e) à" est omis, car il s'agit de l'opérateur par défaut.
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'country', 'expression': 'ind' }] }], 'rowLimit': 10 }
Sortie
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
10 principales requêtes mobiles en Inde, triées par nombre de clics, dans l'ordre décroissant
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'country', 'expression': 'ind' }, { 'dimension': 'device', 'expression': 'MOBILE' }] }], 'rowLimit': 10 }
Sortie
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
Interroger une tranche de lignes
Vous pouvez interroger une tranche de lignes spécifique en spécifiant un numéro de ligne de début (basé sur zéro) et le nombre de lignes à renvoyer. Si vous indiquez un numéro de ligne de début non valide, une erreur est renvoyée, mais le nombre de lignes disponibles dépasse le nombre de lignes disponibles.
11 à 20 requêtes les plus fréquentes sur mobile pour la période, triées par nombre de clics, dans l'ordre décroissant
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'device', 'expression': 'mobile' }] }], 'rowLimit': 10, 'startRow': 10 }
Sortie
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
Obtenir plus de 25 000 lignes
Si votre requête comporte plus de 25 000 lignes de données, vous pouvez demander des données par lots de 25 000 lignes à la fois en envoyant plusieurs requêtes et en incrémentant la valeur startRow à chaque fois. Compter le nombre de lignes récupérées. Si vous obtenez un nombre inférieur au nombre de lignes demandées, vous avez récupéré toutes les données. Si votre requête se termine exactement à la limite de données (par exemple, s'il y a 25 000 lignes et que vous avez demandé startRow=0 et lineLimit=25000), vous recevrez une réponse vide lors de votre prochain appel.
Les 1 à 25 000 requêtes les plus fréquentes sur mobile pour la période, triées par nombre de clics, dans l'ordre décroissant
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'device', 'expression': 'mobile' }] }], 'rowLimit': 25000, 'startRow': 0 }
25 001 à 50 000 requêtes les plus fréquentes sur mobile pour la période, triées par nombre de clics, dans l'ordre décroissant
Code
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'device', 'expression': 'mobile' }] }], 'rowLimit': 25000, 'startRow': 25000 }
Récupérer toutes vos données
Consultez Interroger tout votre trafic de recherche.