2015-11-02 108 views
0

我試圖使用谷歌搜索控制檯API來從我的網站獲取一些數據。下面我的代碼用於做到這一點:à谷歌搜索控制檯,搜索分析,獲取更多數據

service = build('webmasters', 'v3', http=http) 
collection = service.searchanalytics() 

request = { 
    'startDate': '2015-10-24', 
    'endDate': '2015-10-25', 
    'dimensions': ['query','page', 'device'], 
    'searchType': 'web', 
    'rowLimit': '5000' 
} 

response = collection.query(siteUrl=property_uri, body=request).execute() 

我的問題是,我只能夠約1000行。我想知道是否有辦法獲得我所有的網站數據。例如發送另一個請求以獲取1000行下一行等等。 現在,如果我重複請求,我會得到相同的響應。

感謝您的幫助

回答

1

由於documentation狀態:行的有效範圍是1〜5000,「的API不支持分頁結果」(相對於以前版本的則稱爲網站管理員工具API)。

因此,您最多隻能有5000個數據行(至少比瀏覽器界面能提供的1000行更多)。

有效行數似乎也有所不同,具體取決於過濾器和聚合設置。

編輯:支持分頁結果最近到達,因爲它似乎。現在有一個名爲「startRow」的參數,它之前沒有出現過,它的工作方式和預期的一樣。

-1

您可以設置startRow參數以獲得更多結果。 如果返回的結果具有rowLimit的長度,我將rowLimit添加到startRow。

比方說,我有一天13000查詢。 所以我的startRow是0和我的rowLimit是5000.

在第一個請求我得到5000個結果回來。我檢查結果長度= rowLimit。如果是,我設置我的startRow = startRow + rowLimit。

在第二個請求我得到5000個結果。我檢查結果長度= rowLimit。如果是,我設置我的startRow = startRow + rowLimit。

startRow現在是10000.在第三個請求我得到3000個結果。現在我的結果長度不是rowLimit。我必須擁有谷歌的所有數據。