Invalid value at 'requests[0].delete_dimension.range.sheet_id' (TYPE_INT32)

与世无争的帅哥 提交于 2019-12-11 04:39:36

问题


I am using Google spreadsheets API v4. I want to delete some rows via python script. i tried their example code and i got the following error

Invalid value at 'requests[0].delete_dimension.range.sheet_id' (TYPE_INT32)

my code:

    batch_update_spreadsheet_request_body = {
    "requests": [
        {
            "deleteDimension": {
                "range": {
                    "sheetId": sheetId,
                    "dimension": "ROWS",
                    "startIndex": 0,
                    "endIndex": 3
                }
            }
        },
        {
            "deleteDimension": {
                "range": {
                    "sheetId": sheetId,
                    "dimension": "COLUMNS",
                    "startIndex": 1,
                    "endIndex": 4
                }
            }
        },
    ],
}

request = sheets_service.spreadsheets().batchUpdate(spreadsheetId=sheetId, body=batch_update_spreadsheet_request_body)
response = request.execute()

The full traceback

Traceback (most recent call last): File "/home/yahia/DSP_Project_Server_Software/python_scripts/TMSA/TMSA.py", line 70, in main() File "/home/yahia/DSP_Project_Server_Software/python_scripts/TMSA/TMSA.py", line 67, in main response = request.execute() File "/usr/local/lib/python2.7/dist-packages/oauth2client/_helpers.py", line 133, in positional_wrapper return wrapped(*args, **kwargs) File "/usr/local/lib/python2.7/dist-packages/googleapiclient/http.py", line 840, in execute raise HttpError(resp, content, uri=self.uri) googleapiclient.errors.HttpError: https://sheets.googleapis.com/v4/spreadsheets/sheetId:batchUpdate?alt=json returned "Invalid value at 'requests[0].delete_dimension.range.sheet_id' (TYPE_INT32), "sheetId" Invalid value at 'requests[1].delete_dimension.range.sheet_id' (TYPE_INT32), "sheetId"">


回答1:


In your script, sheetId is used for "sheetId": sheetId, and spreadsheetId=sheetId.

  1. sheetId at "sheetId": sheetId, is gid of URL. Please check here. https://developers.google.com/sheets/api/guides/concepts#sheet_id

  2. sheetId at spreadsheetId=sheetId is Spreadsheet ID. Please check here. https://developers.google.com/sheets/api/guides/concepts#spreadsheet_id

Each sheetId is different. So please modify them.



来源:https://stackoverflow.com/questions/44620930/invalid-value-at-requests0-delete-dimension-range-sheet-id-type-int32

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!