esaのタグの正規化を促すスクリプトを書きました

3行まとめ

  • esaをバシバシ使っていると、同じタグのつもりが表記が揺れてくる
  • 検索で意図せず引っかからないことがあるので、正規化したい
  • 定期的に表記が揺れているタグの正規化を促すスクリプトを書きました

背景

esa.ioのAPIをガシガシ使いながら日記を書いています。

ちょいちょい使いやすく修正していて、タイトルやタグもこのアプリから反映できるようにしました。タグは補完がないため、bigqueryやらBigQueryやらどんどん表記が揺れていきます。そうすると、タグで検索したときに意図せずエントリが引っかからなくて困る...! 自動的に修正するのもちょっと怖いので、せめて正規化を促すようにして治安を保ちたいなと思いました。

スクリプトを作る

「さっとスクリプトを作るかー」と思ってAPIのdocsを見ていましたが、案外タグの一覧取得のエンドポイントがない...!サポート問い合わせをしたところ、エンドポイントはすでに存在していて、ドキュメントへの記載漏れだったということで、さっと記載してもらいました。ありがたい。

エンドポイントがあればさっと作れる、ということで作りました。github actionsで簡単に動かせると思うので、煮るなり焼くなりどうぞ。

こんな感じで通知してくれます。

f:id:syou6162:20211206191920p:plain

lowercaseにして一致するやつがあるかくらいしか見ていないので、将来的には編集距離とかを見れたりするようにしようかなとかは思ってます。


あと、そもそもこういうケースは入力側を対応して、そもそもバラ付きが起きにくい状況にするのが吉です。なので、サードバーティの自前ツールにタグの自動補完機能を実装して、揺れがそもそも起きにくいようにする、というのも実装しました。これの裏側でもesa.ioのタグの一覧APIを使っています。

f:id:syou6162:20211206191439p:plain