您可以對 Google 搜尋資料執行查詢,藉此查看資源出現在 Google 搜尋結果中的頻率,以及查詢內容 (來自電腦和智慧型手機等)。您可以根據這些結果改善資源的搜尋成效,例如:
- 查看特定時間內的搜尋流量變動、流量來源,以及哪些搜尋查詢字詞最常帶出你的資源。
- 瞭解哪些查詢來自於智慧型手機的使用者,並藉此改善行動裝置的曝光效果。
- 查看哪些網頁獲得的 Google 搜尋結果點閱率最高 (和最低)。
搜尋查詢資料會透過 searchanalytics.query()
方法公開。query()
方法會公開 Search Console 的成效報表中提供的所有資料。執行查詢之前,請先參閱「搜尋分析」報表說明文件,瞭解會公開哪些資料及其意義。
本頁面說明如何透過不同的要求參數執行常見查詢。
開始說明
驗證資料是否存在
執行查詢之前,請先測試該時間範圍內是否有資料。 省略篩選條件、排序、列數上限,以及除開始日期、結束日期及「日期」以外的任何其他參數。
代碼
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 號的資料。
建議您使用 API 瀏覽器在任意形式的編輯模式中快速測試查詢 (按一下要求主體欄位側邊的下拉式箭頭,然後按一下 [任意形式編輯器])。
驗證有效日期範圍後,就可以開始按其他維度分組、新增篩選器和資料列數量限制等
按照點擊次數排序的前 10 名查詢 (依遞減順序)
代碼
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 大網頁,按遞減順序排序
代碼
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 名的查詢 (依點擊次數排序,依遞減順序排序)
請注意,系統會略過篩選器運算子「等於」,因為該運算子是預設運算子。
代碼
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 大行動查詢 (依點擊次數排序,依遞減順序排序)
代碼
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 個行動查詢 (依點擊次數排序,遞減)
代碼
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 列資料,一次要求多個資料。計算已擷取的列數;如果所要求的資料列數少於要求數,則已經擷取了所有資料。如果要求完全位於資料邊界 (例如有 25,000 列,且您要求 startRow=0 和 rowLimit=25000),下次呼叫時,您會收到空白回應。
所選日期範圍內前 1-25,000 個行動查詢 (按點擊次數排序,遞減)
代碼
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 筆行動查詢 (按點擊次數排序,遞減)
代碼
request = { 'startDate': flags.start_date, 'endDate': flags.end_date, 'dimensions': ['query'], 'dimensionFilterGroups': [{ 'filters': [{ 'dimension': 'device', 'expression': 'mobile' }] }], 'rowLimit': 25000, 'startRow': 25000 }
取得所有資料
請參閱查詢所有搜尋流量。