AlfredWorkflowで遊ぶページ

Lesson26.四字熟語であそんでみる

開発メモ

サンプル動画 ワークフロー


Lesson7などのパース系ワークフローから派生して作成しています

1.四字熟語のサイトを探す

 実は、この題材となるサイトをさがす作業が一番苦労します
 ランダム表示するのは母数が1000個程度は欲しいのですが、1ページでこれだけの数の
 情報を持っているものはなかなかありません。
 で、見つけたのがこのサイト
 
 このHPは四字熟語が、表になっています。
 HTMLをみるとシンプルにtrタグのなかに4つのtdタグがあるだけですね

2.HTMLをパースして、必要な情報を取り出す

 4つのタグの中身は下記の通り
  1つ目のtdは通番
  2つ目のtdは四字熟語
  3つ目のtdは四字熟語のふりがな
  4つ目のtdは四字熟語の意味

 上記tdタグを配列に格納し、数字でコントロールするだけで上手くいきそうですね
 4つのtdが1組なので、四字熟語の件数(下のmax)はtdタグの総数を4で割ればわかります

 max=$((${#td[@]}/4))


 その中からランダムに9件抽出します
 下のコードは1からmaxまで並べて、シャッフルして、頭の9件を配列ixに格納します 
 簡単ですね

 ix=(`seq 1 $max|shuf|head -n 9`)

3.JSON出力フォーマットのXMLを作成する

 せっかく通番があるので、uidも使いましたが、特になくてもOKです
 titleは、『漢字の四字熟語:その四字熟語のふりがな』としました
 subtitleにはその四字熟語の意味
 linkは、四字熟語として、後続フローでデフォルトブラウザでの検索につなげています

 

背景

  Lesson16『トリビアの泉のランダム表示』を作成したときに、四字熟語のランダム表示
 思いつき作りました。

取扱説明

機能:

 難読四字熟語を表示する
 

インストール:

 1.Alfredworkflowをダウンロード
 2.ファイルをダブルクリックしてワークフローに登録

使い方:

 キーワード『4ji』を入力するとランダムに難読四字熟語が表示されます

トップページに戻る