如何从Google表格API v4中的单元格获取格式信息的Python示例?

时间:2016-08-29 22:17:17

标签: python google-api-client google-sheets-api

我一直在努力编写自己的Google表格封装,到目前为止,这是一次令人沮丧的经历。我现在坚持的是如何获得表格数据的对称输入/输出格式。

基本上,我想调用values()。get(),更改生成的哈希,并将相同的哈希值发送回update()。

我很乐意编写自己的解决方案来处理或强制输出值()。get()到batchUpdate()所需的结构,但我需要每个的格式化信息。细胞做到了

batchUpdate()需要格式化信息,如下所示:

T

我如何检索值目前看起来像这样:

bod = {
    'updateCells': {
        'start': {
            'sheetId': 0,
            'rowIndex': 7,
            'columnIndex': 0
        },
        'rows': [
            {
                'values': [
                    {
                        "userEnteredValue": {
                            'stringValue': 'LOL'
                            }, 
                        "userEnteredFormat": {
                            'backgroundColor': {
                                'red': .2,
                                'blue': .75,
                                'green': .75
                            }
                        }
                    },
                    {
                        "userEnteredValue": {
                            'stringValue': 'LOL2'
                            }, 
                        "userEnteredFormat": {
                            'backgroundColor': {
                                'red': .2,
                                'blue': 1,
                                'green': .75
                            }
                        }
                    },
                    {
                        "userEnteredValue": {
                            'stringValue': 'LOL3'
                            }, 
                        "userEnteredFormat": {
                            'backgroundColor': {
                                'red': .2,
                                'blue': 1,
                                'green': 1
                            }
                        }
                    }                    
                ]
            }
        ],
        'fields': 'userEnteredValue,userEnteredFormat.backgroundColor'
    }
}

这会生成"结果",这是一个包含2个键的字典,"范围"和"值"和"值"是电子表格值列表的列表。这些列表不包含格式化数据 - 只包含单元格中的值。

有人可以用Python向我展示如何从电子表格()。values()或电子表格中获取单元格值,背景颜色,对齐方式和其他单元格格式信息吗?

1 个答案:

答案 0 :(得分:1)

spreadsheets.values.get端点仅返回值。如果您想要更完整的电子表格图片(格式等),那么您需要使用spreadsheets.get端点:

https://developers.google.com/sheets/reference/rest/v4/spreadsheets/get

确保传递includeGridData=true或传递包含fields的{​​{1}}的值,以便返回单元格数据。传递sheets.data参数中的值以将结果限制为仅特定范围。