オルタナティブ・ブログ > 少しでもパラノイアになってみる >

知的好奇心を満たすために、いろいろなことにチャレンジする

Google Apps Scriptでブラウザシェアを取得してみた

»

Apps Script Gallery for Google spreadsheets」にあるようにGoogle Apps Scriptを登録できるようになったようです。

Google Apps ScriptはGoogle Apps Premier/Education Edition利用者に公開していることは知っていたのですが、一般ユーザが使用できるとは知りませんでした。

使うことができるならば「Net Applicationsのブラウザバージョンシェア情報取得してみた(Chrome Extensions)」で公開したブラウザシェアを取得するスクリプトを移植してみました(今回はブラウザバージョンのみ)。

同じJavascriptなので移植は簡単に出来ました。HTTPrequestの方法が違いましたがやスプレッド操作などは別途資料を読む必要がありますが、概ね移植作業は短時間ですみます。

Apps Script Galleryとして公開しましたが審査があるようで(今回みたいに外からデータをごっそり持ってくるのはあまりよろしくないかも...)、このエントリを書いている時点ではまだ公開されていません。

そこで、ソースは公開(ソース置き場のsetBrowserShare.zipです)しますので、使い方などを書いてみます。

setBrowserShare.zipをダウンロードして解凍します。

次にGoogleスプレッドシートを開き(何もないシートがいいです)、以下のようにスクリプトエディタを開きます。

次にsetBrowserShare.zipのソースの中身を全コピーして、貼り付けて(出来ればmyFunctionも消したほうがいいでしょう)ます。

保存(FDボタンを押します...けどいつまで保存はFDのアイコンなんだろうか...)します。保存時に名前を聞いてくるので"setBrowserShare"でもしてください。説明の箇所も適当(例:ブラウザシェア取得)に記載して保存ボタンを押してください。

これで準備完了です。次にFDアイコンの右横にある矢印ボタン(実行ボタン)を押してください。上側に以下の様に実行中が出ます。

実行中が終わるとシートの方に以下のようにデータが表示されます(残念ながら今はA1の基点しています)。

これでGoogleスプレッドシートにブラウザシェアが出力されます。取得したデータを煮るなり焼くなりしてください。

機能自体はChrome Extensionsで作成したものと代わりがありませんが、スプレッドシートにデータが貼り付けられる少ない手間でデータを加工することが可能です。このため、データ取得系スクリプトはGoogle Apps Scriptの方が便利だと思います。

Google Apps Scriptは、Javascriptがベース(スプレッドシートを操作する機能がプラスされている)のため私には便利この上ないのですが、IDEのデバッガーが使えないこと何度もデバックしていると回数制限に引っかかり実行できなくなりました(サーバサイドで実行しているためでしょう)。

このため、Chrome ExtensionsかHTMLでベースとなるスクリプトを作成後にGoogle Apps Scriptへ移植したほうがよさそうな気がします。

【関連記事】
Net Applicationsのブラウザバージョンシェア情報取得してみた(Chrome Extensions)

Comment(0)