ノード.グーグルシートを読む🤓
データベースに関しては、SQLデータベースやNoSQLの代替案についてよく考えますが、Googleのシートを考えてみませんか?
ええ、待って?はいGoogleシートは、データストアとして機能することができます!
だから今日、私たちは
次のようになります.
最初からプロジェクトを開始します.まず、新しいノードプロジェクトを設定しましょう.
それでは、Google APIパッケージをインストールしましょう.
現在、我々は我々を得る必要があります
次のURLを参照してください
Google Quickstart
コピーする
そこに行くと、Googleの提供されているノードスクリプトを使用して開始されます.
クリエイトア
変数を定義することから始めます
そして、それがすべて行われるとき、我々は我々を呼びます
それから、我々は新しいものを始めます
しかし、我々の機能を実行するとき、我々はURLを訪問するよう求められる.
それから、我々はそれを訪問しなければならなくて、我々のシートへのGoogleアクセスをしなければなりません.
我々は、我々がペーストするコード背中を得ます.
その後、我々のトークンが作成されます!
Googleシートから読み取る実際の関数を作成するには
それから、我々は電話します
それから、我々がデータを得るならば
そこに行くと、我々は今Googleシートから読み取ることができるノードスクリプトを作った.
スクリプトを実行するには、次のコマンドを実行します.
私の完全なコードを見つけることができますGitHub またはGoogle .
私のブログを読んでくれてありがとう.私の電子メール会報を購読して、接続してくださいFacebook or
ええ、待って?はいGoogleシートは、データストアとして機能することができます!
だから今日、私たちは
Node.js
Googleシートからデータを読み取るスクリプト.次のようになります.
プロジェクトの開始
最初からプロジェクトを開始します.まず、新しいノードプロジェクトを設定しましょう.
npm init
ここでプロンプトに従ってください.特別な何も必要More info about starting a node app here.
それでは、Google APIパッケージをインストールしましょう.
npm install googleapis@39 --save
それは本当にです!現在、我々は我々を得る必要があります
credentials.json
Googleからファイル.次のURLを参照してください
Enable the Google Sheets API
ボタン.Google Quickstart
コピーする
credentials.json
プロジェクトにファイルします.ノードスクリプトの作成
そこに行くと、Googleの提供されているノードスクリプトを使用して開始されます.
クリエイトア
index.js
プロジェクト内のファイル.変数を定義することから始めます
const fs = require('fs');
const readline = require('readline');
const {google} = require('googleapis');
次に、どのAPIを使いたいかをGoogleに伝える必要があります.const SCOPES = ['https://www.googleapis.com/auth/spreadsheets.readonly'];
と空を定義するtoken.json
PATH ( Googleはそこにトークンを保存します)const TOKEN_PATH = 'token.json';
その後、我々は資格情報ファイルを読んで、Googleで認可する必要があります!そして、それがすべて行われるとき、我々は我々を呼びます
listMajors
主な機能である機能!fs.readFile('credentials.json', (err, content) => {
if (err) return console.log('Error loading client secret file:', err);
authorize(JSON.parse(content), listMajors);
});
を、許可する機能を許可しましょう!function authorize(credentials, callback) {
const {client_secret, client_id, redirect_uris} = credentials.installed;
const oAuth2Client = new google.auth.OAuth2(
client_id, client_secret, redirect_uris[0]);
fs.readFile(TOKEN_PATH, (err, token) => {
if (err) return getNewToken(oAuth2Client, callback);
oAuth2Client.setCredentials(JSON.parse(token));
callback(oAuth2Client);
});
}
私たちは、ファイルから受け取って、新しいOAuthクライアントを作成して、資格情報を定義しています.それから、我々は新しいものを始めます
token.json
ファイルと呼び出しgetNewToken
関数.function getNewToken(oAuth2Client, callback) {
const authUrl = oAuth2Client.generateAuthUrl({
access_type: 'offline',
scope: SCOPES,
});
console.log('Authorize this app by visiting this url:', authUrl);
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
rl.question('Enter the code from that page here: ', (code) => {
rl.close();
oAuth2Client.getToken(code, (err, token) => {
if (err) return console.error('Error while trying to retrieve access token', err);
oAuth2Client.setCredentials(token);
fs.writeFile(TOKEN_PATH, JSON.stringify(token), (err) => {
if (err) return console.error(err);
console.log('Token stored to', TOKEN_PATH);
});
callback(oAuth2Client);
});
});
}
これは、何が起こっているか、ちょっとのビットです.しかし、我々の機能を実行するとき、我々はURLを訪問するよう求められる.
それから、我々はそれを訪問しなければならなくて、我々のシートへのGoogleアクセスをしなければなりません.
我々は、我々がペーストするコード背中を得ます.
その後、我々のトークンが作成されます!
Googleのシートからのノードの読み込み。
Googleシートから読み取る実際の関数を作成するには
listMajors
) 次のコードを使用します.function listMajors(auth) {
const sheets = google.sheets({ version: 'v4', auth });
sheets.spreadsheets.values.get({
spreadsheetId: '1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms',
range: 'Class Data!A2:E',
}, (err, res) => {
if (err) return console.log('The API returned an error: ' + err);
const rows = res.data.values;
if (rows.length) {
console.log('Name, Major:');
// Print columns A and E, which correspond to indices 0 and 4.
rows.map((row) => {
console.log(`${row[0]}, ${row[4]}`);
});
} else {
console.log('No data found.');
}
});
}
それで、我々は新しいシートAPIを定義することから始めます.それから、我々は電話します
values.get
ここで、スプレッドシートID、およびセルの範囲を渡します.Note: This ID is the default Google Testing document!
それから、我々がデータを得るならば
console.log
コンソールへの特定のデータバック!そこに行くと、我々は今Googleシートから読み取ることができるノードスクリプトを作った.
スクリプトの実行
スクリプトを実行するには、次のコマンドを実行します.
node .
When putting this code in
Git
, make sure to keep your credentials and token safe 🤓
私の完全なコードを見つけることができますGitHub またはGoogle .
読んでいただきありがとうございます、接続しましょう!
私のブログを読んでくれてありがとう.私の電子メール会報を購読して、接続してくださいFacebook or
Reference
この問題について(ノード.グーグルシートを読む🤓), 我々は、より多くの情報をここで見つけました https://dev.to/dailydevtips1/node-js-reading-a-google-sheet-3dpkテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol