ダイヤ ユウ

主にプログラミング。

RubyでSimilarWeb APIを使ってみようと思ったが、俺の力では使えなかった件について

similar webでいちいちurlを入力するのではなくて、コードで実行したかったので調べてみたらありました。 SimilarWebのAPI

ちょっとこいつを使ってみたい。

SimilarWebのdeveloperサイトにアクセス

f:id:utr066:20171231135324p:plain

apiを使うので、まずは登録しないといけませんね。以下のサイトから登録します。

SimilarWeb API - Digital Competitive Data

「GetStart」から画面の通りに進んで、登録するかログインします。 Googleのアカウントでログインできるようなので、画面に従って進みます。

f:id:utr066:20171231135839p:plain

なにやらそれっぽい画面が出てきます。 欲しいのはAPI_KEYなのでそれを生成できそうな箇所を探します。

f:id:utr066:20171231140120p:plain

ありましたね。 「APIマネジメント」をクリック。

f:id:utr066:20171231140122p:plain

「新規キーを作成する」から適当な名前でapi_keyを作成します。

SimilarWebのGemを使う

rubyのgemにsimilarwebがあったので、それを使いましょう。

GitHub - johnmcl/similarweb

railsで試すのは面倒くさいので、rubyのファイル作ってrequireします。 (あんまりローカルには色々入れたくないが)

gem install similarweb
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.

なるほど。

sudo gem install similarweb

これでとりあえずrequireできるはず。

require  'similarweb'
client = SimilarWeb::Client.new(api_key: '取得したapi_key')
traffic = client.traffic('disney.com')
puts traffic

github通りならこれでtraffic表示できそうだが、どうだ。

{"Message"=>"Application key, Application Id or User Key must be provided"}

全然いけないじゃん。 メッセージ的にもはやapi_key死んでるのかな?

f:id:utr066:20171231150011p:plain

マイ使用料残り0とかなってるなあ。でも、無料でもできるって書いてあるしなあ。

f:id:utr066:20171231150130p:plain

うーーーん。

f:id:utr066:20171231150216p:plain

直で叩いてjson返ってくるかみてみましょう。

{"error":{"message":"Seems you're out of API calls. Please upgrade your account: https://developer.similarweb.com/pricing","code":403}}

直で叩いてもアカウントのグレード上げろって言われるしなあ。。ふう。

わかんねえぜ☆