- Вы хотите использовать метод batchUpdate в Sheets API.
- Вы хотите добиться этого с помощью gspread с python.
- Вы уже смогли получить и введите значения для Google Spreadsheet.
Если я правильно понял, как насчет этого ответа? Пожалуйста, подумайте об этом, как об одном из нескольких возможных ответов.
Точки модификации:
- В общем, нет метода
spreadsheets()
в client.open("SheetsAPI Practice").sheet1
. В вашем скрипте вы пытаетесь использовать метод googleapis python с gspread. Причина сообщения об ошибке заключается в следующем. - У gspread есть метод для использования batchUpdate в Sheets API. Таким образом, вы можете использовать это, когда
client = gspread.authorize(creds)
можно использовать для таблицы Google, которую вы хотите использовать. - Ваше тело запроса необходимо изменить. Когда вы используете
req
для метода batchUpdate, добавьте в массив, например, {"requests": [req]}
.
Когда указанные выше точки отражаются в вашем скрипте, это выглядит следующим образом.
Модифицированный скрипт:
С:
sheet = client.open("SheetsAPI Practice").sheet1
req = { "repeatCell": {
"range": {
"sheetId": 0,
"startRowIndex": 0,
"endRowIndex": 1
},
"cell": {
"userEnteredFormat": {
"textFormat": {
"bold": True
}
}
},
"fields": "userEnteredFormat.textFormat.bold"
}
}
sheet.spreadsheets().batchUpdate(spreadsheetId=sheet.id,body=req).execute()
Кому:
spreadsheet = client.open("SheetsAPI Practice")
req = {
"requests": [
{
"repeatCell": {
"range": {
"sheetId": 0,
"startRowIndex": 0,
"endRowIndex": 1
},
"cell": {
"userEnteredFormat": {
"textFormat": {
"bold": True
}
}
},
"fields": "userEnteredFormat.textFormat.bold"
}
}
]
}
spreadsheet.batch_update(req)
- При запуске этого модифицированного скрипта тексты 1-й строки становятся жирным шрифтом.
Примечание:
- В этом измененном сценарии предполагается, что таблица Google может использоваться учетной записью службы. Пожалуйста, будьте осторожны с этим.
Ссылки:
Если я неправильно понял ваш вопрос, и это не то направление, в котором вы хотите, прошу прощения.