テケオは眠くても頑張るぞ!

何もかも面倒臭い。そんなテケオの生き方や考え方をつづるブログ

【自動化】ブラウザ操作を自動化するツール「iMacros」を紹介しよう。

f:id:tektekeo:20170612155937p:plain

こんにちは。テケオです。

今日はブラウザ操作を自動化するツール「iMacros」をご紹介したいと思います。

知らない方は一読する価値はあると思いますよ。使い方次第ではかなり便利になるツールです。

iMacrosとは

Google Chrome, FireFox, IEのアドオンで提供されている。ブラウザ操作を自動化するツールです。

最大の特徴はコードを書くことなく、プログラムを組めること

でも、書いた方が拡張性は高いんですけどねw

書くに至った経緯

本格的な説明の前に少しだけ。先日こんな記事を見つけた。

ysklog.net

管理人が見たときは

何でその作業をUWSCでするんだよwもっと簡単な方法あるでしょ。

みたいな感じで見てました。

でも果てしないブックマーク数...なぜだ?そうか!UWSCっていうツールが有益な情報なのか!!

と、その時気づくw

これのブラウザ版みたいなものがiMacrosです。つまりこの記事は管理人がバズ記事を出したいという、スケベェな気持ちが入った記事なのである!

わかる人からすると、カスみたいな記事に仕上がっていると思いますが、生暖かい目でお読みください。

iMacrosの使い方

shinei-systems.co.jp

簡単な使い方だけだと、上の記事を参考にしたら良いと思う。大まかな流れで言うと、

  1. 「Rec」ボタンを押す
  2. 実際にブラウザを操作する
  3. 「Stop」を押してレコードを確定する
  4. 自動保存されたiimファイルを実行する
  5. 記録したマクロが動作する

と言う流れです。

つまり、実際にコードを書くことなく、自動化のコードを記述できるのである!

(でも多少は書くことになるケースがほとんど)

UWSCと同じじゃないか?

ここで読者からこんな声が聞こえてきそうだ。

UWSCと同じ?それだったらブラウザ以外でも使えるUWSCの方が良いじゃん。

確かに...

でもUWSCにはある欠点がある。

座標とコマンドしか記憶できないと言うことだ(多分w)。

つまり、作った時にはうまく動くけど、一度閉じてレイアウトが違った場合全く動かないといったケースが出てくる。

その度に編集し直さないといけないと言うめんどくささがある。

その点iMacrosなら、HTMLタグやテキストを指定することができるんです。

なのでUWSCよりも精度の高い動作が可能です(ブラウザ上だけだけどね)。

FireFoxならjavascriptが使える

他のブラウザだとiimファイルしか使えないのに、FireFoxならjavascriptが使えます。

これがマジで便利!

javascriptできないと話は始まらないけど、超初心者レベルさえあればかなり変わる。

そう、結局管理人の意見としては、

iMacrosは書かなくても使えるって言ったけど、書いた方が断然色々できるよ!

てこと。要は書きましょう(笑)

あんまり意味はないけど、例を挙げてみる。

twitterにログインしてログアウトするだけ

f:id:tektekeo:20170612170643p:plain

ファイル名:login_logout.iim

※黒で隠しているのはパスワード部分です

 

上述した通り「Rec」を押して記録しただけで、一切コードは書いていません。

これで、twitterにログインしてログアウトが自動でできます。

何か処理したい時は8行目の青いハイライトの部分に記述を追加すれば良いです。

だとしたら、別にjavascript使う必要なくない?

その通りです。

ただし、色々なプログラムでログイン、ログアウトを使うとすると、同じコードをなんども書く必要が出てきます。

初心者の方は、その度にマクロを記録し直したり、コピペしたりすると思うので時間がかかってしまいます。

そこで、まずlogin_logout.iimファイルを分割します!

f:id:tektekeo:20170612171457p:plain

ファイル名:login.iim

※黒で隠しているのはパスワード部分です

 

f:id:tektekeo:20170612171445p:plain

ファイル名:logout.iim

 

そして以下のようなjavascriptファイルを書きます。

f:id:tektekeo:20170612171733p:plain

これを実行すると、login_logout.iimと同じ動作をしてくれます。

何か処理をしたい時は2行目の青いハイライト部分に記述します。

loginとlogoutの記述がかなりスッキリしましたし、login.iimとlogout.iimの使い回しができるのです。

スッキリしてわかりやすいですね。

変数をぶち込んだり、ループ文が使える

アドオンの初期機能でiimファイルをループできるのですが、ある値を変えてループしたい時があります。

それができるのがjavascript。素晴らしい...

例えば、以下のようなjavascriptファイルを作ります。

f:id:tektekeo:20170612172859p:plain

 

そしてlogin.iimファイルを修正

f:id:tektekeo:20170612173608p:plain

赤の下線部分が変更箇所。{{name}}とかくとiimSetされた文字列が入る。

※黒で隠しているのはパスワード部分です

 

こうするとaaaさん、bbbさん、cccさんが順次ツイッターにログインしてログアウトするコードが出来上がります。

 

使い方次第ではかなり便利になると思いませんか?

まとめ

ブラウザ操作の自動化にはiMacrosってツールが便利だよ

それと管理人の個人的な意見だけど、

自動でコードを記録されるのは便利だけど、一文づつその意味を紐解いて、独自のプログラム、javascriptファイルを作って欲しいです。

多くの人はプログラム部分を読みたくないから、簡単な自動化ツールを探したりするんでしょうけど、結局コードを読んで、ある程度自分で書けるようになった方が早いです。

でも1から10までプログラムを書くのは難しいので、大半はiMacrosのレコード機能に頼って、少しは自分で書くように進めたら良いと思います。

これをキッカケに興味を持っていただけたら幸いです。