やりたいこと
- rippleチャートの現在の価格を5秒ごとにテキストファイルに出力させるscriptを作成する
まずは周辺の情報を取得
terminal
$ curl -s 'https://www.coingecko.com/ja/%E7%9B%B8%E5%A0%B4%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88/%E3%83%AA%E3%83%83%E3%83%97%E3%83%AB/jpy' | ggrep -oP '(?<=<span>)(.+)(?=</span>)'
- ggrep → Homebrewのコマンド → 先読み、後読み機能が付いているのがgrepとの違い
- -o
- 正規表現に一致した部分のみを返す
- -P
- Perlの正規表現を有効にする
- -o
結果
terminal
15,726,286,988,711¥
405.9534¥
15,726,286,988,711¥
298.35287¥
432.55378¥
988,417,787,080¥
15,726,286,988,711¥
298.35287¥
432.55378¥
988,417,787,080¥
405.9534¥</span></b>です。現在の流通量は 38.7 十億 で取引された合計は <span>988,417,787,080¥
405.9534¥
15,726,286,988,711¥
988,417,787,080¥
欲しいのは以下の頭の405.9534
!他のはいらん!
405.9534¥</span></b>です。現在の流通量は 38.7 十億 で取引された合計は<span>988,417,787,080¥
よってさらに絞り込みをする。
もっと絞り込む
terminal
$ curl -s 'https://www.coingecko.com/ja/%E7%9B%B8%E5%A0%B4%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88/%E3%83%AA%E3%83%83%E3%83%97%E3%83%AB/jpy' | ggrep -oP '(?<=<span>)(.+)(?=</span>)' | grep '</span></b>' | cut -d\¥ -f1
- cut
- -d
- deleteする。-d\¥ にすることで、¥で区切るため、¥より前の情報のみを出力することができる。
- -f1
- 抽出するフィールドの番号を指定する。この場合は1列目だけを抽出
- -d
結果
terminal
405.9534
上記の値を5分ごとにファイルに出力する
terminal
watch -n 300 "curl -s 'https://www.coingecko.com/ja/%E7%9B%B8%E5%A0%B4%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88/%E3%83%AA%E3%83%83%E3%83%97%E3%83%AB/jpy' | ggrep -oP '(?<=<span>)(.+)(?=</span>)' | grep '</span></b>' | cut -d\¥ -f1 >> ripple.txt"
watchコマンドで-nの後に300を指定することで300秒ごとにcurlコマンドを実行することができる。
ripple.txtはDesktopに予め作成しておいたファイルです。
次はこの値をスマホに通知したい!!