Advertisement
Guest User

Untitled

a guest
Jul 19th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2. Docs on the google-spreadsheet package:
  3. https://www.npmjs.com/package/google-spreadsheet
  4. */
  5.  
  6. const GoogleSpreadsheet = require('google-spreadsheet');
  7. const {
  8.     promisify
  9. } = require('util');
  10.  
  11. // These are creds for a Service Account Key specifically, should be a json file in same directory as script
  12. const creds = require('./test_creds');
  13.  
  14. const SPREADSHEET_ID = '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms'
  15.  
  16.  
  17. var doc = new GoogleSpreadsheet(SPREADSHEET_ID);
  18. var sheet;
  19.  
  20. async function accessSpreadsheet() {
  21.     await promisify(doc.useServiceAccountAuth)(creds)
  22.     const info = await promisify(doc.getInfo)()
  23.     console.log(`Loaded doc: ` + info.title + ` by ` + info.author.email)
  24.     sheet = info.worksheets[0]
  25.     console.log(
  26.         `sheet 1: ` + sheet.title
  27.     )
  28. }
  29.  
  30. var getData = async function() {
  31.     await accessSpreadsheet();
  32.     let rows = await promisify(sheet.getRows)({
  33.         offset: 1,
  34.         // limit: 3,
  35.         // orderby: 'col2'
  36.     });
  37.     return rows;
  38. }
  39.  
  40. module.exports = getData;
  41.  
  42.  
  43. /* How to use externally:
  44.  
  45. const getData = require('./[this_script]')
  46.  
  47. async function useSpreadsheetData() {
  48.     var data = await getData();
  49.  
  50.     ...
  51.  
  52. }
  53.  
  54. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement