Calendar7日目の記事です。昨今AI関連の話題を耳にしない日は無く、これから先AI関連の技術を避けては生きていけない雰囲気が漂ってますが、それ系の技術にはさっぱり乗り遅れている僕です。最近は画像を読み込ませるだけで色々認識・生成してくれるようなプログラミングレスのサービスもたくさん登場していますが、はて、それに読み込ませる画像データはどうやって用意すればいいねん...という段階で早くも挫折しそうです。調べてみるとやはり皆さん苦労されているようで大まかに以下の様な方法で取得してるっぽいです。画像配布サイト各種webサービスのAPIスクレイピング自分で撮影...まぁ、そうするしかないよね...という感じですね...。昨今プログラミングレスで色々やってくれるサービスも増えているので、そういうサービス使うユーザは画像データもコード書かずに取得出来た方がいいよねきっと。いう事でvvvvで画像を取得すればちょっとは敷居が下がるのかなという願いで、vvvvで画像収集にチャレンジ。APIを使ってみます。画像収集できるAPIは他にもGoogle、Flickrとかいろいろ考えられるので、もしかしたら今後対応していくかも(かも)。本題ですがこれ系のAPIはHTTPリクエストに特定のHeaderとかいれなければならないので、その辺は配布されているプラグインを頼ります。Nodeなお、レスポンスはJSON形式です。vvvvでJSONをパースするのにはプラグインがあるのですが標準で入っているAsXElement(JSON)ノードでもできるのでそちらを使います。parserAPIのドキュメントを読みながら実装。(このドキュメント読みにくいな。referenceクエリパラメータはHTTP_Add_KeyValueParameterノードで設定します。HTTP_Add_Headerノードで「Ocp-Apim-Subscription-Key」というヘッダーに発行したAPIキーを設定して実行すると瞬く間に画像がダウンロードされます。AsXElement(JSON)ノードはJSONを一度XMLに変換するというちょっと不思議なやつですが、XMLにした後はXML系のノードでどんどんパースできます。vvvvで検索した結果↓あ、なんか思っていたより便利。このパッチは必要最低限なのでエラー処理とかいろいろ作りこみが必要ですが、やる価値ありそう。他のサービス(Flickrとか)にも対応させたいし。