我需要使用Python从工作表中删除一行。我们的工作表上有数千条记录,数据会定期更新,因为所有的事情都是用Python完成的,所以这个任务也需要用Python完成。
这就是我到目前为止从留档和其他教程中得到的:
def connect_to_sheet():
creds = None
if os.path.exists('token.pickle'):
with open('token.pickle', 'rb') as token:
creds = pickle.load(token)
if not creds or not creds.valid:
if creds and creds.expired and creds.refresh_token:
creds.refresh(Request())
else:
flow = InstalledAppFlow.from_client_secrets_file(
'credentials.json', SCOPES)
creds = flow.run_local_server(port=0)
with open('token.pickle', 'wb') as token:
pickle.dump(creds, token)
service = build('sheets', 'v4', credentials=creds)
sheet = service.spreadsheets()
return sheet
与工作表的连接必须在不同的函数中进行,因为我在其他地方多次使用它,但在下一个函数中,我会发出请求并得到错误:
request_body = {
"requests": [
{
"deleteDimension": {
"range": {
"sheetId": SheetID,
"dimension": "ROWS",
"startIndex": startIndex,
"endIndex": endIndex
}
}
}
]
}
result = sheet.values().batchUpdate(spreadsheetId=SPREADSHEET_ID_4G,body=request_body).execute()
错误:
我搜索过的每一个SOF示例和类似问题都使用了完全相同的请求!但我仍然无法找出导致此错误的问题<非常感谢您的帮助,谢谢。
deleteDimension
用于电子表格的方法。BatchUpdateinSheetsAPI。但在您的脚本中,它与电子表格方法一起使用。价值观批量更新。我想这就是你的问题所在
当上述各点反映到脚本中时,它将变成如下所示。
result = sheet.values().batchUpdate(spreadsheetId=SPREADSHEET_ID_4G,body=request_body).execute()
result = sheet.batchUpdate(spreadsheetId=SPREADSHEET_ID_4G,body=request_body).execute()
工作表
可用于使用spreadsheets.batchUpdate的方法。根据API,似乎无法指定将数据附加到何处的工作表。它在第一个工作表中附加所有内容。真的是这样吗? 因为我可以创建一个包含多张工作表的文件,但是我不能在第二张工作表上写字?
我有一个表格,每一行都有数据填充和相应的删除按钮。 HTML代码: 当我想要从模式中删除一行时,单击该行中的删除按钮(模式)会调用该行。我使用函数“onDelete(emp.id)”在点击时调用一个模式 Typescriptcode:这里它正确地选择了我想要删除的行id 从模态按钮,我试图通过调用按钮上的函数来删除单击“delete员工(emp.id)”Typecriptcode:这里我无法通过选
我想写数据到我的工作表: 但在日志中我看到: 我做错了什么?我将非常感谢为您提供的示例代码:) 在例子中没有足够的信息(https://developers.google.com/sheets/api/guides/values#writing_to_a_single_range)
问题内容: 假设我有一个充满昵称的文本文件。如何使用Python从此文件中删除特定的昵称? 问题答案: 首先,打开文件并从文件中获取所有行。然后以写模式重新打开文件并写回你的行,但要删除的行除外: 你需要在比较中使用换行符,因为如果文件不以换行符结尾,则最后一个line也不行。
带有的QueueAccessRQ返回“如果离开队列,则无法执行此操作” 即使在QueueAccessRQ之前执行IgnoreTransactionRQ或EndTransactionRQ,消息也是相同的,除了IgnoreTransactionRQ后跟QueueAccessRQ和返回“无法结束事务-工作区中没有PNR” 如何从队列中删除特定的PNR?
我正在尝试编写一种方法,删除每组4个元素中的第一个、第二个和第三个元素。它似乎根本不起作用。有人能帮忙吗?