【问题标题】:How can I append the results from python script into google sheet如何将 python 脚本的结果附加到谷歌表中
【发布时间】:2018-07-19 20:18:17
【问题描述】:
import subprocess
import ipaddress
import pygsheets
from subprocess import Popen, PIPE
from pprint import pprint
from googleapiclient import discovery

#def append_table(start='A1', end=None, values=None, dimension='ROWS', 
overwrite=False)

gc = pygsheets.authorize(service_file="testProj.json")
source_spreadsheet = 
gc.open_by_key("1Mc1RbfPZIbxmCiqlRJt_AWJVasrGqA7iLmUkuHHL3tw")
wks = source_spreadsheet.sheet1


network = ipaddress.ip_network('10.70.60.0/23')


for i in network.hosts():
i=str(i)
toping = Popen(['ping', '-c', '3', i], stdout=PIPE)
output=toping.communicate()[0]
hostalive = toping.returncode
if hostalive == 0:
    print (i, "Pings")
else:
    print (i, "Doesn't ping")

我能够从文件中读取,我只是想弄清楚如何写入它。例如,A列将列出子网中的所有IP,B列将打印出IP是否ping通

【问题讨论】:

  • 我很确定有示例代码显示了如何使用 pygsheets 和 gspread 写入 Google 表格 - 你能够执行这些示例吗?
  • 是的,我已经经历了很多例子,但我很难让它工作我遇到很多语法错误,我是 python 新手
  • 好吧,您需要在此处的代码中加入解决问题的努力。对某事不熟悉并不意味着你不应该尝试解决它。当您尝试编写时,请确保其余代码是有效的 Python - 您在此处发布的内容中至少有一个 IndentationError
  • 大声笑我今天已经尝试了 8 个小时!
  • 当您尝试写入文件时会发生什么?您是否看到任何类型的错误输出?如果是这样,包括错误将是使这个问题更容易回答的良好开端。

标签: python google-sheets-api gspread pygsheets


【解决方案1】:

我认为您需要授予您的程序在表格中写入的权限,在您的表格中必须有写入权限的共享选项,您必须插入电子邮件 ID,您在凭证 JSON 文件中获得该邮件 ID,当你制作你的 api 密钥

注意:- 我是 Python 新手,也是 stackoverflow 的新手,对 google 表格还没有做太多,但是在学习连接到 google 表格的过程中,我看到了一个视频,我需要将邮件 ID 放入共享中

【讨论】:

  • 此时无法确定 OP 写入所需 Google 表格文件的问题,因为他们提供的代码甚至没有尝试写入 Google 表格文件。但是,它确实似乎有一个服务帐户授权步骤,并且 OP 确实表明该文件至少可以被服务帐户读取。
  • 是的,它是可读的我在工作表中创建了虚拟文本并运行了脚本,它确实输出了结果,但我从代码中删除了该行,因为我试图写而不是读
  • 我的问题基本上是我不知道如何修改我的代码,所以当我运行脚本时,它会将输出转储到工作表中
  • 尝试使用 python developers.google.com/sheets/api/quickstart/python查看谷歌官方文档以获取谷歌表格
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 2013-08-01
相关资源
最近更新 更多