Как динамически обновлять / вставлять строки и столбцы таблиц Google в gspread? - PullRequest
1 голос
/ 14 мая 2019

У меня есть электронная таблица, как показано ниже, и у меня есть API, который будет представлять данные в виде списка по дате, как показано ниже

[05/06/2019', 10000, 14003, 140, $576.1786404]
[05/07/2019', 11000, 14003, 140, $576.1786404]
[05/08/2019', 50641, 14067, 357, $578.8120356]

enter image description here

ВсеМне нужно обновить данные за дату, если она уже существует или вставить новую строку в лист с новой датой.

Из приведенного выше списка мне нужно обновить данные 05/06/2019 и мне нужно вставить две строки даты 05/07/2019 и 05/08/2019

IУ вас есть код ниже, и вы не знаете, как выполнить следующие шаги для реализации

gc = gspread.authorize(creds)

worksheet = gc.open("chethan testing").sheet1

cell_list = worksheet.range('A3:E3')
cell_values = [1,2,3,4,5]

for i, val in enumerate(cell_values):
    cell_list[i].value = val 

 worksheet.update_cells(cell_list)

Может кто-нибудь подсказать мне, как выполнить следующие шаги .?

Заранее спасибо

1 Ответ

1 голос
/ 15 мая 2019

Для выполнения вышеуказанного требования, которое я выполнил, как показано ниже, *

 my_list = [['2018-11-10', '1000000000', '14003', '140', '576.1786404'], ['2018-11-11', '506541', '14067', '357', '578.8120356'], ['2018-11-12', '423175', '15250', '330', '627.4887'], ['2018-11-13', '274503', '11337', '240', '466.4812716'], ['2018-11-14', '285468', '11521', '194', '474.0522828']]

worksheet.values_update(
    'Sheet1!A3',
    params={
        'valueInputOption': 'RAW'
    },
    body={
       'values':my_list
    }

)

Это обновит существующие значения и добавит другие значения в новые строки.

Больше вы можете найти здесь https://gspread.readthedocs.io/en/latest/api.html

https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update

...