はじめに
これまで投稿したこれら2本の記事で共通するのは、変態成分多めのアダルトサイトDUGAのAPIを使っていることです。
そこで今回はDUGA APIクライアントのGEM、"ruby_duga"を作成、公開してみました。
使用方法
GitHubのREADMEを参照していただきたいのですが、こちらでは日本語で説明したいと思います。
インストール
$ gem install ruby_duga
DUGA API IDの取得
DUGAでアプリケーションIDの発行申請をしてください。APIの使用にあたって、アプリケーションIDと代理店IDが必要になります。
利用例
require "ruby_duga"
cli = RubyDuga.new(app_id: "YOUR_APP_ID", agent_id: "YOUR_AGENT_ID", banner_id: "YOUR_BANNER_ID")
response = cli.search(keyword: "コメディ", adult: 0)
response.body[:items].map {|x| x[:item][:title]}
=> ["けっこう仮面 マングリフォンの逆襲", "古今亭駒次「公園のひかり号」", "けっこう仮面 フォーエバー", "けっこう仮面 RETURNS", "できる子の証明", "天然華汁さやか", "けっこう仮面 プレミアム", "18倫 アイドルを探せ!", "ビキニ★ラーメン", "18倫"]
メインの使い方はadult: 1
です。各自試してみてください。
環境変数にDUGA_APP_ID
、DUGA_AGENT_ID
、DUGA_BANNER_AGENT
を指定すれば、RubyDuga.new
の際に、app_id
、agent_id
、banner_id
を指定する必要はありません。
app_id
、agent_id
は必須の情報ですが、banner_id
に指定がない場合は01
が使用されます。
クライアントに渡すリクエストパラメータ、レスポンスフィールドの詳細についてはDUGAの「ウェブサービス」を参照してください。
参考情報
GEMの公開方法
こちらを参考にさせていただきました。思ったより簡単でした。
参考にしたGEM
DMM APIクライアントのGEMです。
正直、かなりの部分はruby-dmmからのコピペです。
さいごに
GEMの作成方法は多くの部分が自動化されており、すんなりリリースすることができました。
ご要望、不具合などがありましたら、ここかGitHubでお願いします。
DMMはすでにruby-dmmで作成されており、今回はDUGAのAPIクライアントを公開しました。次はソクミルもやってみたいと思います。公開でき次第、Qiitaで報告させていただきます。