puppeteerを試してみようと思ったんだけど
実行しようとしたらいきなり
Cannot find module ‘puppeteer’
って怒られてしまい、、、
NODE_PATH が空だったので
値を設定してあげたら動いたっぽいから
恐らくそれが原因かな~
1 |
$ export NODE_PATH=`npm root -g` |
これで解決なり!
puppeteerを試してみようと思ったんだけど
実行しようとしたらいきなり
Cannot find module ‘puppeteer’
って怒られてしまい、、、
NODE_PATH が空だったので
値を設定してあげたら動いたっぽいから
恐らくそれが原因かな~
1 |
$ export NODE_PATH=`npm root -g` |
これで解決なり!
■アプリの認証を行う
1 |
https://www.facebook.com/dialog/oauth?client_id={アプリID}&redirect_uri={サイトURL} |
ブラウザで上記URLにアクセスして、リダイレクトされたURLの
パラメータにセットされてるcodeの値をメモメモ
■アクセストークンの取得
1 |
https://graph.facebook.com/oauth/access_token?client_id={アプリID}&redirect_uri={サイトURL}&client_secret={app secret}&code={XXXXX} |
これをブラウザでアクセスすると
access_tokenを取得できる。ただ有効期限が2時間
下記URLより2か月に延長できる
アクセストークンデバッガー
https://developers.facebook.com/tools/debug/accesstoken/
最近、がっつりと
Google apps scriptに浸かってたので
便利だな~と思った小技集をメモメモ
■ シートの追加
1 2 3 |
var ss = SpreadsheetApp.getActiveSpreadsheet(); ss.insertSheet(sheetNm, idx); sheet = ss.getSheetByName(sheetNm); |
idx:追加する場所 0は一番左
■ シートの削除
1 2 3 4 5 |
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName('シート1'); if (sheet) { ss.deleteSheet(sheet); } |
■ アクティブなセルの情報を取得
1 2 3 4 5 |
var sheet = SpreadsheetApp.getActiveSheet(), sheetNm = sheet.getSheetName(), cell = sheet.getActiveCell(), row = cell.getRow(), col = cell.getColumn(); |
■ htmlをオーバーレイ風に表示する
1 2 3 |
var ui = SpreadsheetApp.getUi(); var output = HtmlService.createHtmlOutputFromFile('run').setHeight(300).setWidth(520).setSandboxMode(HtmlService.SandboxMode.IFRAME); ui.showModalDialog(output, '処理実行中'); |
run.htmlを開くよ
■ 日付のフォーマット
1 2 3 4 |
var d = new Date(); var thisYear = Utilities.formatDate( d, 'JST', 'yyyy'); var thisMonth = Utilities.formatDate( d, 'JST', 'M'); var thisDate = Utilities.formatDate( d, 'JST', 'd'); |
■ getRange
1 2 3 4 5 6 7 8 9 10 |
sheet.getRange('A1:B1') .merge() // セルの結合 .setFontSize('12') // フォントサイズ .setValue('test') // 値をセット .setFontColor('#fff') // フォントカラー .setBackground('#000') // 背景色 .setFontWeight('bold') // 太字 .setVerticalAlignment('middle') // テキスト位置(縦) .setHorizontalAlignment('center') // テキスト位置(横) .setNumberFormat('@') // フォーマット @ は文字列として認識 .setBorder(true, true, true, true, true, true, '#999999', null); // 罫線 |
■ 行(列)の値の入っている最後のセルの情報を取得
例)A列のデータが入っている最終行を取得
1 2 |
dataA = sheetSort.getRange('A:A').getValues(); dataRow = dataA.filter(String).length; |