我们如何删除 Python 中 Google 电子表格中的行?
How can we delete rows in Google Spreadsheet in Python?
我正在尝试删除 B 列日期少于 30 天的行。
我可以在下面的代码中使用 print(row)
正确地打印我想删除的行。但 sheet.delete_row()
不工作并出现以下错误:
AttributeError: 'Resource' object has no attribute 'delete_row'
from google.oauth2 import service_account
from googleapiclient.discovery import build
import datetime
service_account_file = 'keys.json'
scopes = ['https://www.googleapis.com/auth/spreadsheets']
credential = service_account.Credentials.from_service_account_file(service_account_file, scopes=scopes)
spreadsheet_id = ‘testtesttesttest’
service = build('sheets', 'v4', credentials=credential)
sheet = service.spreadsheets()
result = sheet.values().get(spreadsheetId=spreadsheet_id, range='database!A2:J').execute()
values = result.get('values', [])
date = datetime.datetime.now() - datetime.timedelta(30)
for row in values:
if datetime.datetime.strptime(row[1], '%d/%m/%Y') < date:
sheet.delete_row()
尝试使用 中的 spreadsheets().batchUpdate()
,delete_row
似乎被 gspread
使用(另一个 Python API 用于 Google 张)
我正在尝试删除 B 列日期少于 30 天的行。
我可以在下面的代码中使用 print(row)
正确地打印我想删除的行。但 sheet.delete_row()
不工作并出现以下错误:
AttributeError: 'Resource' object has no attribute 'delete_row'
from google.oauth2 import service_account
from googleapiclient.discovery import build
import datetime
service_account_file = 'keys.json'
scopes = ['https://www.googleapis.com/auth/spreadsheets']
credential = service_account.Credentials.from_service_account_file(service_account_file, scopes=scopes)
spreadsheet_id = ‘testtesttesttest’
service = build('sheets', 'v4', credentials=credential)
sheet = service.spreadsheets()
result = sheet.values().get(spreadsheetId=spreadsheet_id, range='database!A2:J').execute()
values = result.get('values', [])
date = datetime.datetime.now() - datetime.timedelta(30)
for row in values:
if datetime.datetime.strptime(row[1], '%d/%m/%Y') < date:
sheet.delete_row()
尝试使用 spreadsheets().batchUpdate()
,delete_row
似乎被 gspread
使用(另一个 Python API 用于 Google 张)