שליחת שאילתות על נתוני הניתוח של חיפוש Google

אתם יכולים להריץ שאילתות על נתוני החיפוש ב-Google כדי לראות באיזו תדירות הנכס מופיע בתוצאות החיפוש ב-Google, עם אילו שאילתות, אם מהמחשב או מהסמארטפון ועוד. אתם יכולים להשתמש בתוצאות כדי לשפר את ביצועי הנכס בחיפוש, לדוגמה:

  • אפשר לראות איך תנועת החיפוש משתנה לאורך זמן, מה המקור שלה ולאילו שאילתות חיפוש יש הסבירות הגבוהה ביותר להציג את הנכס.
  • ניתן ללמוד אילו שאילתות מבוצעות בסמארטפונים ולהשתמש בכך כדי לשפר את המיקוד לפי מכשיר נייד.
  • אפשר לראות באילו דפים מתקבל שיעור הקליקים הגבוה (והנמוך) ביותר מתוצאות חיפוש Google.

נתוני שאילתות החיפוש נחשפים באמצעות השיטה searchanalytics.query(). השיטה query() חושפת את כל הנתונים שזמינים בדוח הביצועים ב-Search Console. לפני שמריצים שאילתות, כדאי לקרוא את המסמכים של דוח הביצועים כדי ללמוד אילו נתונים נחשפים ומה המשמעות שלהם.

בדף הזה מוסבר איך לבצע שאילתות נפוצות עם פרמטרים שונים של בקשות.

תחילת העבודה

אימות נוכחות הנתונים

לפני שמפעילים שאילתה, צריך קודם לבדוק אם יש נתונים בטווח הזמן הזה. השמטת מסננים, מיון, מגבלות על שורות וכל פרמטר אחר מלבד 'תאריך התחלה', 'תאריך סיום' ו'תאריך' בתור המאפיין היחיד.

Code

request = {
      'startDate': flags.start_date,
      'endDate': flags.end_date,
      'dimensions': ['date']
  }

פלט

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

אפשר לנסות תאריכים אחרים

אנחנו רואים שיש לנו נתונים לגבי התקופה הזו, כך שאפשר להמשיך. חשוב לעשות זאת לפני שמפעילים את השאילתה בפועל. לדוגמה, הפעלת אותה שאילתה בטווח אחר מחזירה את התוצאה הבאה:

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

אם תבחינו היטב, תראו שהנתונים מסתיימים ב-14 בחודש. אין נתונים לגבי ה-15 בחודש.

מומלץ להשתמש ב-APIs Explorer במצב עריכה חופשי כדי לבדוק את השאילתות במהירות (לוחצים על החץ הנפתח בצד השדה של גוף הבקשה ואז על 'עורך חופשי').

אחרי שתאשרו את טווח התאריכים התקפים, תוכלו להתחיל לקבץ לפי מאפיינים אחרים, להוסיף מסננים, להגדיר מגבלות על מספר השורות וכו':

10 השאילתות המובילות, ממוינות לפי מספר הקליקים, בסדר יורד

Code

request = {
    'startDate': flags.start_date,
    'endDate': flags.end_date,
    'dimensions': ['query'],
    'rowLimit': 10
}

פלט

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 הדפים המובילים, ממוינים לפי מספר הקליקים, בסדר יורד

Code

request = {
    'startDate': flags.start_date,
    'endDate': flags.end_date,
    'dimensions': ['page'],
    'rowLimit': 10
}

פלט

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 השאילתות המובילות בהודו, ממוינות לפי מספר הקליקים, בסדר יורד

שימו לב שאופרטור המסנן 'שווה' מושמט, כי הוא אופרטור ברירת המחדל.

Code

request = {
    'startDate': flags.start_date,
    'endDate': flags.end_date,
    'dimensions': ['query'],
    'dimensionFilterGroups': [{
         'filters': [{
              'dimension': 'country',
              'expression': 'ind'
          }]
      }],
      'rowLimit': 10
  }

פלט

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 השאילתות המובילות בנייד בהודו, ממוינות לפי מספר הקליקים, יורד

Code

request = {
    'startDate': flags.start_date,
    'endDate': flags.end_date,
    'dimensions': ['query'],
    'dimensionFilterGroups': [{
        'filters': [{
            'dimension': 'country',
            'expression': 'ind'
          }, {
            'dimension': 'device',
            'expression': 'MOBILE'
       }]
    }],
    'rowLimit': 10
}

פלט

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

שליחת שאילתה על קבוצת שורות

כדי לשלוח שאילתה לגבי פלחי שורות ספציפיים, מציינים את מספר השורה ההתחלתית (מתחילים באפס) ואת מספר השורות שיש להחזיר. אם מציינים מספר שורה לא תקין להתחלה, תופיע שגיאה, אבל אם מציינים יותר שורות ממה שזמין, יוצגו כל השורות הזמינות.

11-20 השאילתות המובילות בנייד בטווח התאריכים, ממוינות לפי מספר הקליקים, בסדר יורד

Code

request = {
      'startDate': flags.start_date,
      'endDate': flags.end_date,
      'dimensions': ['query'],
      'dimensionFilterGroups': [{
          'filters': [{
              'dimension': 'device',
              'expression': 'mobile'
          }]
      }],
      'rowLimit': 10,
      'startRow': 10
  }

פלט

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

הצגת יותר מ-25,000 שורות

אם בשאילתה יש יותר מ-25,000 שורות נתונים, אפשר לבקש נתונים בקבוצות של 25,000 שורות בכל פעם. לשם כך, שולחים כמה שאילתות ומגדילים את הערך של startRow בכל פעם. ספרו את מספר השורות שאוחזרו. אם מספר השורות שאוחזרו קטן ממספר השורות שהתבקשתם, אחזרתם את כל הנתונים. אם הבקשה מסתיימת בדיוק בגבולות הנתונים (לדוגמה, יש 25,000 שורות וביקשתם startRow=0 ו- rowLimit=25000), בשיחה הבאה תקבלו תשובה ריקה.

1-25,000 השאילתות המובילות לנייד בטווח התאריכים, ממוינות לפי מספר קליקים, בסדר יורד

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 השאילתות המובילות בנייד בטווח התאריכים, ממוינות לפי מספר הקליקים, בסדר יורד

Code

request = {
      'startDate': flags.start_date,
      'endDate': flags.end_date,
      'dimensions': ['query'],
      'dimensionFilterGroups': [{
          'filters': [{
              'dimension': 'device',
              'expression': 'mobile'
          }]
      }],
      'rowLimit': 25000,
      'startRow': 25000
  }

איך מקבלים את כל הנתונים

שליחת שאילתות לגבי כל תנועת הגולשים בחיפוש