株価をラインに自動で送りたい
この記事において
GAS(Google Apps Script)を用いて
株価をスプレッドシートへ自動取得・記録できた。
これでもいいが
毎回PCを開くのも面倒なので
取得した株価をラインにも同時に送信されるようにしたい。
株価をLINEに通知するやり方だ。
設計図
今回やりたいことの設計図はシンプルだ。
①GASを使って自身のLINEへ送信できるか試す。
②自動取得した株価のデータをまとめて1つにしてラインへ送信する。
①について
①GASを使って自身のLINEへ送信できるか試す。
ラインは、デベロッパー登録することにより(無料)
コード等を用いてラインのトークへ送信
もしくは
ラインのトークの内容を受信して処理を行う
ことができる。
GASのコードにこのラインのコードを組み込むことで
コードを実行すればラインのトークに送信ができる。
イメージとしては
企業の公式アカウントを登録すると
定期的に自動でトークに送信されてくるボットだ。
このボットが簡単に実現できる。
実際にラインのトークへ送信する
ここまででGASのコードまで書けたが
このままではまだラインへは送れない。
最後にラインのデベロッパー登録の画面で
Webhookの接続と
作ったボットをQRコードを用いて自身のラインに友達追加する。
こちらのサイトが大変参考になった!
ありがとうございます!
qiita.com
また、トータルで参考にさせていただいたのが
こちらのサイトです。
ありがとうございました!
tanaken.me
②について
②自動取得した株価のデータをまとめて1つにする。
株価のデータはすでにスプレッドシートの最終列に格納されているので
そのデータを取得して配列に入れる。
ただし、私の勝手により1行置きにデータがあるため
取得した配列の中身は
{'1' , '' , '3' , '' , '5'}
このように奇数にしか中身が入っていない。
そのため、for文の繰り返し処理をする際に
1つ飛ばしで配列からデータを取得したい。
1つ飛ばしの繰り返し
同じ処理を繰り返したいが
今回は、配列に入っている値のうち
奇数のもののみを取り出したい。
ところが、for文を使う際によくみるのは
i++
というカタチで1つずつ数字を増やしていくものだ。
奇数のみという、1つ飛ばしの繰り返しについては
こちらのサイトに書いてあった!
そのまま活用させていただきました!
ありがとうございます!
ラインのトーク内で改行するコード
データを取得できたので
あとはそれを改行してラインに送信したい。
GASで書いたコードにより
ライン内で改行するためには
\n
を使う。
こちらのサイトを参考にしました!
ありがとうございます!
GASで年月日のみを表示する方法
オマケで
GASで日時を表示したい。
理想は
2020/5/17
といった形式だ。
しかし、日時を取得する際
var date = new Date();
としてしまうと、標準時間等
意図しないフォーマットになった。
こちらのサイトを参考にさせていただいたところ
var date = new Date(); date = Utilities.formatDate(date, 'Asia/Tokyo', 'yyyy/MM/dd');
このようなコードにすることで
2020/5/17
というフォーマットにすることができた。
ありがとうございました!
まとめ
実は、今回は大きくつまづくこともなく
ラインへ株価を送信することができた。
前回の株価自動取得のコードと組み合わせることにより
毎日同じ時間に株価を自身のラインへ自動送信できるようになったのだ。
なので、ラインへの送信は
初心者でも比較的簡単に実装できる。
手作りのLINEボットも作れそうなので
時間があったら作るのも面白そうである。
その他
いきなり大失敗した運用日記はこちら笑
ここから最強のFX投資法を編み出した。
plasticbagg.hatenablog.jp
このルールにしたがい運用中。
plasticbagg.hatenablog.jp
FXを始めたキッカケはこちら。
plasticbagg.hatenablog.jp