リンクバルの船寄と申します。
web系の開発者なら、誰もがお世話になっているPageSpeed Insights
apiから利用してみたので、ご紹介させて頂きます。

やりたかったこと

  • PageSpeed Insightsを利用して、画像の最適化について指摘されている項目を抽出し、日本語かつsjiscsvファイルとして保存したい。
  • URLを記載したリストファイルを準備し、リストに記載されているURLをANALYZEしたい。
  • 実行時間をなるべく短縮したい。

やったこと

golangで使って簡単なコマンドツールを作ってみました。

実行環境は以下の通り

  • macOS Sierra 10.12.3
  • go version go1.8 darwin/amd64

事前準備

  • 公式clientを準備する
    https://github.com/google/google-api-go-client/tree/master/pagespeedonline/v2
[code lang=text] go get google.golang.org/api/pagespeedonline/v2
[/code]
  • sjisでcsvへ保存したかったので、エンコーディングパッケージを準備する
[code lang=text] go get golang.org/x/text/encoding/japanese
[/code]
  • ANALYZEするURLを記載したリストを準備する

ソースコード

結果

結果はresult.csvへ出力されます
ツールを実行することにより、下記の形式でcsvファイルを出力することができました。

実行日時 2017-03-30 13:59:22.807444599 +0900 JST
mobile/desctop mobile
対象ページのURL http://hogehoge.com
対象ページのTITLE hogehoge title
対象ページのSPEED SCORE 56
指摘ルール名 画像を最適化する
指摘内容サマリ(Summary) 画像に適切なフォーマットと圧縮を選ぶことで、データ サイズを大きく削減できます。
指摘内容詳細 http://hogehoge.com/assets/fuga.jpg を圧縮すると 113.4 KB(74%)削減できます。
指摘画像URL http://hogehoge.com/assets/fuga.jpg

※1 PageSpeed Insights画像の最適化について指摘されている箇所のみが、一行づつ出力されます。
※2 表が長くて収まらないので、縦向きに記載しております。

サイトからポチポチするより断然効率化できますよ。
ご興味ある方は使ってみてください。

リンクバルではエンジニアを積極募集中です。
興味のある方は、こちらからご応募ください!