ザ・スコッチモルトウイスキー・ソサエティオンラインショップで蒸留所名を表示するChrome拡張機能を作りました

2018/7/14 SMWS公式の構成変更に合わせて修正

先日、ザ・スコッチモルトウイスキーソサエティ(以下ザ・ソサエティ)の会員になりました。ザ・ソサエティとは蒸留所から樽を買い付けて加水せずボドリングし販売するボトラーです。詳しくは以下を見て頂くのがベストかと思います。
shop.smwsjapan.com

ザ・ソサエティが販売するボトルのラベルには、蒸留所コードと呼ばれる独自の番号体系が付与されており、蒸留所名が記載されていません。例えば、「1.999」であれば"グレンファークラス蒸留所"の樽番号"999"となります。このコード体系、詳しい人であればすぐに分かるのでしょうが、入会して幾分の若輩者には調べないと分からない訳です。そこでザ・ソサエティのオンラインショップにて蒸留所名を表示するChrome拡張機能の「SMWS Distllery Code Display」を作りました。

SMWS Distllery Code Displayとは

ザ・ソサエティオンラインショップ(https://shop.smwsjapan.com/)の蒸留所名を表示するChrome拡張機能です。本Chrome拡張機能をインストールした状態でザ・ソサエティオンラインショップを表示すると蒸留所コードの下部に蒸留所名が表示されるようになります。


インストール方法

ソースコードGItHubリポジトリにて公開してあります。リポジトリhttps://github.com/suworky/SMWS-Distllery-Code-Display、ライセンスはMITです。トップページに表示されているREADME.mdの通り、Chromeにインストールして下さい。抜粋した内容を以下に貼り付けておきます。

  1. srcディレクトリをダウンロード
  2. Google Chromeにてchrome://extensions/を開く
  3. 右上のデベロッパーモードをオンにする
  4. 画面上部のパッケージ化されていない拡張機能を読み込むを選択
  5. ダウンロードしたsrcディレクトリを指定
  6. ザ・スコッチモルトウイスキーソサエティオンラインショップにアクセス!

技術的なこと

ページの末端タグが持つtextに蒸留所コードがあれば、それを抜き取り蒸留所名に変換して埋め込む、といういたってシンプルな実装です。Chrome拡張機能を作ったのは初めてでしたが、ググれば情報がたくさん出てくるのでハマるようなことは特になかったです。
唯一ハマったことと言えば、どこかのページの樽番号の末尾になぜか半角スペースが入っており、正規表現でうまくマッチできなかったことでしょうか。

readyNASでssh接続とfindとか

readyNASでroot以外でsshログインできるようにする

これを見ておけば間違いない。
ssh接続について - NETGEAR Communities

$ chsh suwork -s /bin/bash

findで特定の日付ファイルを検索

目的は特定の日付を特定のフォルダに移したい。日付指定でfindしてxargsでコピーをする。-execだとcp -pオプションが使えなかったような記憶があります。

$ find . -newermt '20170226 00:00' ! -newermt '20170226 23:59' -type f -print0 | xargs -0 cp -p -t ./20170226/

findで正規表現を使う

コマンドに自信がなかったので結果の確認をしておく。直下のファイル群とフォルダ配下のファイルを一覧化してdiffで差分がなければ満足ね。

# 直下の一覧
find . -maxdepth 1 -type f -regextype posix-egrep -regex ".*(JPG|NEF|DNG)" | xargs ls -rtl | sort > tyokka.txt

# フォルダ配下の一覧
find ./*/ -maxdepth 1 -type f -regextype posix-egrep -regex ".*(JPG|NEF|DNG)" | xargs ls -rtl | sed 's/\/[0-9]\{8\}\//\//g' | sort > ./dirhaika.txt

# 差分を見る
diff dirhaika.txt tyokka.txt

差分がなかったのでたぶん大丈夫。diff -rでもっと上手く出来るのではないだろうか……。