スプレッドシートにて読書リストを作っています。
全力を尽くしましたが、力尽きましたので、
みなさまのお知恵をお借りできればと思い、質問します。
とりあえず、経緯、現状など説明します。
やったこと
当方、読書の記録として、本の「読み始め」と「読了」のタイミングで、
Twitterへツイートするようにしています。
※読み始め→「○○を読んでいる本に追加」、読了→「○○を読んだ本に追加」
そこで、IFTTTを使って、
- 「自分のTwitterアカウントID」
- 「を読んでいる本に追加」
- 「を読んだ本に追加」
- 「bookmeter.com」
これらのキーワードをキーとして、
該当するツイートをスプレッドシートへ取得するようにしました。
そして、なんとかかんとか、
「本のタイトル」と「著者名」のリストを自動的に作ることはできまして、
あとは、「読み始めの日時」と、「読了の日時」を自動で書き込むスクリプトが書けたら、
期待通りの読書リストが出来るのですが、力尽きました。
--
- 「本Aのタイトル」
- 「(本Aの)著者」
- 「”本Aを読んでいる本に追加”のツイート日時」
- 「”本Aを読んだ本に追加”のツイート日時」
これらを1行に抽出することが必要だと考えますが、
もしかしたら、それこそがネックであり、
越えられない壁なのかもしれないと、薄々思うのですが、
そうであったとしても、ここに至るまでにかなりの学習をすることができたので、
それはそれでよしとする覚悟もあるのですが、
もし、なにかよい方法があれば、お知恵を貸していただけると幸いです。
とりあえず、書いたスクリプトを書いておきます。
javaScript
1// 日時の取得 2function addDate() { 3 var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 4 var sheet = spreadsheet.getSheetByName('生ログ'); 5 var lastRow = sheet.getLastRow(); 6 sheet.getRange(lastRow, 1).setValue(new Date()); 7} 8 9function seikei() { 10 var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 11 var sheet_nama = spreadsheet.getSheetByName('生ログ'); 12 var sheet = spreadsheet.getSheetByName('読書リスト'); 13 var lastRow_nama = sheet_nama.getLastRow(); 14 // タイトルと著者部分 15 var reg3 = "【(.*?)】"; 16 var title_hissya_nama = sheet_nama.getRange(lastRow_nama,3).getValue().match(reg3)[1]; 17 Logger.log(title_hissya_nama); 18 // タイトルの抽出 19 var reg = "^(.*?)/"; 20 var title_nama = title_hissya_nama.match(reg)[1]; 21 Logger.log(title_nama); 22 var lastRow = sheet.getLastRow(); 23 var title = sheet.getRange(lastRow+1,2); 24 if(title_nama != null ){ 25 title.setValue(title_nama); 26 } 27 else{ 28 title.setValue(title_hissya_nama); 29 } 30 // 著者の抽出 31 var reg2 = "/(.*?)$"; 32 var hissya_nama = title_hissya_nama.match(reg2)[1]; 33 Logger.log(hissya_nama); 34 var hissya = sheet.getRange(lastRow+1,3); 35 hissya.setValue(hissya_nama); 36 if(title_nama != null ){ 37 } 38}
そしてこれは、主筋から離れる話ではあるのですが、
IFTTTを使った収集では新規のツイートからしかリストを作れませんよね。
これがもっと、過去のツイートについても、
リスト化できる仕組みがあればいいなぁとは思うのですが、
まぁ、それがやりたいのであれば、さすがに手打ちということになるでしょうか。
追記(2018/05/04 6:49)
答えは出ていませんが、本のタイトルと著者の抽出まで出来た現状でもだいぶ捗るので、
あとの読み始めと読了の日時は、IFTTTで得たデータの時間をコピペしようと思いました。
ありがとうございました。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。