python - 以最简单的方式通过python使用google sheet
问题描述
所以基本上我正在制作一个不和谐的机器人,它可以在我玩的游戏中交易游戏内的物品,并将订单存储在谷歌表中。什么是通过 python 做到这一点的最简单方法,我知道如何做所有的机器人工作,但是当涉及到访问谷歌工作表、搜索它并收集某些信息行时,我找不到太多帮助。我将使用什么模块来使这尽可能简单,该模块需要能够在工作表中搜索一列中的特定值,找到第一个找到列中的第一个空单元格以及从排。如果有人知道这样做的好模块,将不胜感激。
注意:我已经为工作表 api 设置了 OAuth 和所有类似的东西,我看到有一堆模块可以更轻松地访问工作表,所以我想知道哪个模块最能简化编码,因为我不是超级有经验。
解决方案
使用 Googlesheets API 获取数据,然后使用 pandas 将数据作为数据框读取。拥有数据框后,Pandas 可以通过多种方式完成此操作:“需要能够在工作表中搜索某一列中的特定值、找到列中的第一个空单元格以及收集一行中的所有信息”
from googleapiclient.discovery import build
from google.oauth2.credentials import Credentials
import pandas as pd
SAMPLE_SPREADSHEET_ID = 'sheet ID' # your sheet ID
SAMPLE_NAME = 'sheet name' # your sheet name
RANGE = '!A1:D2' # your row/col sheet range
TOKEN_PATH = 'token.json' # path to your token file
SCOPES = ['https://www.googleapis.com/auth/spreadsheets.readonly']
SAMPLE_RANGE_NAME = SAMPLE_NAME + RANGE
creds = Credentials.from_authorized_user_file(TOKEN_PATH, SCOPES)
service = build('sheets', 'v4', credentials=creds)
sheet = service.spreadsheets()
result = sheet.values().get(spreadsheetId=SAMPLE_SPREADSHEET_ID,
range=SAMPLE_RANGE_NAME).execute()
values = result.get('values', [])
df = pd.DataFrame(data=values[1:], columns=values[0])
改编自https://developers.google.com/sheets/api/quickstart/python
推荐阅读
- javascript - 在多个网站上快速运行 JS 代码
- javascript - Moment Js 我怎么知道我在目标时间的一个小时内?
- c# - “object”不包含“ElementExists”的定义
- css - 手机浏览器不支持字体
- javascript - Value.match(/[^0-9|\/]/gi) 不适用于数字?
- java - 无法从 mysql 获取数据以显示在我的 jList 中
- vba - 如何在不调用该列表的每个索引的情况下从下拉列表中选择 Vba?
- python - 如果用户没有输入可选值,如何通过表单(不是 django 表单)接收 django 视图中的可选值?
- java - 如何修复此错误?:线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 3
- amazon-web-services - AWS 上的弹性搜索服务。或者别的地方