Merge pull request #417 from tknzk/sample-cli-sheetsv4
Add sample cli for sheets api
This commit is contained in:
commit
e39b2e66ef
|
@ -0,0 +1,61 @@
|
|||
# Copyright 2016 Google Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
require 'google/apis/sheets_v4'
|
||||
require 'base_cli'
|
||||
|
||||
|
||||
module Samples
|
||||
# Examples for the Google Sheets API
|
||||
#
|
||||
# Sample usage:
|
||||
#
|
||||
# $ ./google-api-samples sheets get_values --spreadsheet_key='1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms' --range='Class Data!A1:F'
|
||||
#
|
||||
# Student Name Gender Class Level Home State Major Extracurricular Activity
|
||||
# Alexandra Female 4. Senior CA English Drama Club
|
||||
# Andrew Male 1. Freshman SD Math Lacrosse
|
||||
# Anna Female 1. Freshman NC English Basketball
|
||||
# Becky Female 2. Sophomore SD Art Baseball
|
||||
# Benjamin Male 4. Senior WI English Basketball
|
||||
# Carl Male 3. Junior MD Art Debate
|
||||
# Carrie Female 3. Junior NE English Track & Field
|
||||
# Dorothy Female 4. Senior MD Math Lacrosse
|
||||
# Dylan Male 1. Freshman MA Math Baseball
|
||||
# Edward Male 3. Junior FL English Drama Club
|
||||
# Ellen Female 1. Freshman WI Physics Drama Club
|
||||
# Fiona Female 1. Freshman MA Art Debate
|
||||
# John Male 3. Junior CA Physics Basketball
|
||||
# Jonathan Male 2. Sophomore SC Math Debate
|
||||
class Sheets < BaseCli
|
||||
Sheets = Google::Apis::SheetsV4
|
||||
|
||||
desc 'get_values', 'Get values from Google Spreadseets '
|
||||
method_option :spreadsheet_key, type: :string, required: true
|
||||
method_option :range, type: :string, required: true
|
||||
def get_values
|
||||
sheets = Sheets::SheetsService.new
|
||||
sheets.authorization = user_credentials_for(Sheets::AUTH_SPREADSHEETS_READONLY)
|
||||
result = sheets.get_spreadsheet_values(options[:spreadsheet_key], options[:range])
|
||||
data = []
|
||||
rows = result.values.length
|
||||
rows.times.each do |row|
|
||||
data.push(result.values[row])
|
||||
end
|
||||
print_table(data)
|
||||
end
|
||||
|
||||
default_task :get_values
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue