Posted at

【最新サービス試用⑧】「単純明快・安全・高速」なURL短縮ツール「urlify.dev」をRubyで利用して、簡単短縮作業。


  • 日々輩出される素晴らしき最新サービスを素早く試して、不鮮明な先見性を堂々と誇示する記事第八弾。

  • 「余暇を増やして、サービス乱発試用にあてたい」という未来妄想を省けば、時間が増えることに気づこうとしない私。

  • 今回は、シンプルかつ便利な短縮URLツール「urlify.dev」をRubyで利用することにしよう。


試用サービス名


urlify.dev


概要


  • 無料かつ登録不要の短縮URLサービス。

  • シンプルかつ匿名性が高いため、「気軽・便利・安全」に利用できる。

  • 優れたAPIも提供しているため、プログラムやコマンドでの利用も可能。

  • ツールサイト


特徴


匿名性の高さ


  • 他ツールと違い、IPや登録ページ等のユーザー関連情報をログとして保存しないようになっている。


シンプル


  • 必要最低限の機能や出力のため、短縮機能として、シンプルで気軽に利用できる。


速度


  • 高速アクセスを実現しているAPIを提供しているため、手軽な短縮作業が可能。


提供セットの豊富さ


  • Webサービスでの短縮の際に、URLだけでなく下記の生成物や機能等を提供している。


    • QRコード

    • TwitterやFacebook等の各種SNS連携機能

    • API利用時のPHPチート(参考)コード




結果


  • 下記のように、「urlifyのAPIで結果を取得する処理」を記述したRubyファイルとURLを指定して、コマンドで実行すれば、簡単に短縮URLを返してくれる。


環境


  • Mac OS X 10.13.4

  • ruby 2.3.3


    • ※Rubyを利用するため、未導入の場合はこちらを参考にする。




手順


  • ※urlifyのサイトで紹介されているAPI利用の参考コードは、PHPでの記述のため、今回はRubyを利用した方法を試用していく。


Rubyファイルの作成


  • Rubyが利用できる状態であることを確認して、下記のコマンドをうち、作業フォルダ・ファイルを作成する。

# Rubyバージョン確認

$ ruby -v
# 作業フォルダ・ファイル作成作成
$ mkdir ~/short_script
$ touch ~/short_script/shorten.rb
# 作業フォルダへの移動
$ cd ~/short_script


  • Rubyファイルの作成後、ファイルの中身を下記にする。


~/short_script/shorten.rb

# 必要モジュール読み込み

require 'json'
require 'uri'
require 'net/http'

# コマンド引数で渡されるURL格納
url =ARGV[0]
# URL変換
encode_url = URI.encode(url)
# urlifyのAPIとしてのURLオブジェクト生成
short_url = URI.parse("https://urlify.dev/api/?url=#{encode_url}&method=json")
# API利用で取得したJSONデータを格納。
json = Net::HTTP.get(short_url)
# 取得JSON解析後、結果格納
result = JSON.parse(json)

# 結果出力
puts (result['short'].nil?) ? '短縮不可能' : "短縮前 : #{result['long']}\n短縮後 : #{result['short']}"



コマンド実行


  • 上記の手順でRubyファイルを記述後、ターミナルへ戻り、下記のようにファイル名と対象URLを指定して、Rubyファイルを実行する。

# 作業フォルダへの移動

$ cd ~/short_script
# Rubyファイル・対象URLを指定して実行
$ ruby shorten.rb https://qiita.com/t_o_d/items/d3799294a6a935f78f8f


  • 実行後、成功していれば結果として返ってくる短縮後のURLにアクセスして、きちんと表示されることを確認。


  • 表示されていれば完了。



まとめ


  • 今回は短縮作業ということで、このサービス利用の必要性を疑うような、短いURLでの利用も純粋に行いながら、記事を書く。

  • 「単純明快・安全」という謳い文句が量産すれば、正直信仰人間である私の激変生活は更に加速。

  • 「次回も謳い文句ありきのサービス試用になるだろう」という未来確定思考と、折り合いをつけながらツール調査を開始。


参考