未経験のITエンジニア転職【テックキャンプ】

iMacros:EVALでランダムに数値や文字を入力する方法【PART.7】

EVAL アイキャッチ

このページ【PART.7】では、EVAL(イーバル)コマンドを使ってiMacros内でJavascriptを使う方法です。

Javascriptと聞くと難しいように聞こえますが、ここで紹介するのはランダムに文字や数値を入力する方法のみです。

参考例を見て頂ければ、すぐに使えるようになりますのでご安心ください。

これからご紹介するコードをメモ帳に保存するか、お気に入りになどに登録しておきましょう。

ノーノちゃん

Javascript分からなくても、参考例コピペしたら使えるってこと?
はい!数値の部分を変更するだけ使えます。

テイくん

1. ランダムに『数値』を入力

使うコマンドはEVALと前回の【PART.7】で出てきた!VARです。

!VARコマンドを詳しく知りたい方はこちら
iMacros:PROMPTと!VARで特定の場所を手動入力にする【PART.6】

それでは、どんな時に使うのか順番にご紹介していきます。

①数字編

フォームに数字をランダムに入力するマクロを作成してみます。

サンプルマクロ
数字ランダム【練習用フォーム】に、PLAYを押すたびに数字がランダムに変わる。

作業の流れ

STEP.1
マクロを作成
数字ランダム【練習用フォーム】に文字を適当に入力する。
STEP.2
マクロを編集
自動で作成されたマクロに、コマンドを追加したり編集する。
STEP.3
マクロを再生

※動画(約2分)を確認後、下の解説を読んで頂くと分かりやすいと思います。


【STEP.1】マクロを作成

1

数字ランダム【練習用フォーム】にアクセス

https://teilab-sub.net/?p=122

2

記憶を開始する

imacros-recored

3

フォームにを入力

imacrosランダムに数字入れる手順

4

記憶を終了する

imacros-stop

5

名前を変更する(省略可)

「#Current.iim」から「数字ランダム.iim」に変更しておきましょう。
マクロ名の変更
imacrosランダムに数字入れる手順


【STEP.2】マクロを編集

1

編集画面を開く

imacrosランダムに数字入れる手順
先ほど自動で作成されたマクロは以下のようになっています。

iim
VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=https://teilab-sub.net/?p=122
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=122#wpcf7-f123-p122-o1 ATTR=NAME:text CONTENT=1234
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/?p=122#wpcf7-f123-p122-o1 ATTR=*

2

マクロを編集する

赤色:追加した部分
オレンジ色:変更した部分
緑色:メモ書き(コメントアウト)
iim
VERSION BUILD=8970419 RECORDER=FX
TAB T=1

'数字ランダム【練習用フォーム】アクセス
URL GOTO=https://teilab-sub.net/?p=122

'1~10までランダム
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10+ 1); randomNumber;")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=122#wpcf7-f123-p122-o1 ATTR=NAME:text CONTENT={{!VAR1}}

'確認をクリック
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/?p=122#wpcf7-f123-p122-o1 ATTR=*

【STEP.3】マクロを再生

1

作成したマクロをクリックする

imacrosランダムに数字入れる手順

2

Playを押す

Playを押すごとにランダムに数字が変わります。
imacros-play


②ブログ投稿日編

ワードプレスや無料ブログなどに、iMacrosを使ってランダムに記事の投稿日を変える事ができます。

サンプルマクロ
ブログ投稿日ランダム【練習用フォーム】に、PLAYを押すたびに投稿日がランダムに変わる。

作業の流れ

STEP.1
マクロを作成
ブログ投稿日ランダム【練習用フォーム】に文字を適当に入力する。
STEP.2
マクロを編集
自動で作成されたマクロに、コマンドを追加したり編集する。
STEP.3
マクロを再生

※動画(約5分)を確認後、下の解説を読んで頂くと分かりやすいと思います。


【STEP.1】マクロを作成

1

ブログ投稿日ランダム【練習用フォーム】にアクセス

https://teilab-sub.net/?p=109

2

記憶を開始する

imacros-recored

3

各フォームに記入する

数値は適当でOKですが、分かりやすいように現在の日時や時間を入れておきましょう。
iMacrosでブログ投稿日ランダムの手順

4

記憶を終了する

imacros-stop

5

名前を変更する(省略可)

「#Current.iim」から「ブログ投稿日ランダム.iim」に変更しておきましょう。
マクロ名の変更
iMacrosでブログ投稿日ランダムの手順


【STEP.2】マクロを編集

1

編集画面を開く

iMacrosでブログ投稿日ランダムの手順
先ほど自動で作成されたマクロは以下のようになっています。

iim
VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=https://teilab-sub.net/?p=109
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:year CONTENT=2019
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:month CONTENT=07
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:day CONTENT=02
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:hour CONTENT=17
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:minutes CONTENT=35
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=*
※日付はこのページを作成した時のものです。
2

マクロを編集する

赤色:追加した部分
オレンジ色:変更した部分
緑色:メモ書き(コメントアウト)
iim
VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=https://teilab-sub.net/?p=109

'2019~2021年までランダム
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*3+ 2019); randomNumber;")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:year CONTENT={{!VAR1}}

'1~12月までランダム
SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*12+ 1); randomNumber;")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:month CONTENT={{!VAR2}}

'1~28日までランダム
SET !VAR3 EVAL("var randomNumber=Math.floor(Math.random()*28+ 1); randomNumber;")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:day CONTENT={{!VAR3}}

'1~23時までランダム
SET !VAR4 EVAL("var randomNumber=Math.floor(Math.random()*23+ 1); randomNumber;")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:hour CONTENT={{!VAR4}}

'1~59分までランダム
SET !VAR5 EVAL("var randomNumber=Math.floor(Math.random()*59+ 1); randomNumber;")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=ID:minutes CONTENT={{!VAR5}}

'確認をクリック
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/?p=109#wpcf7-f108-p109-o1 ATTR=*

【STEP.3】マクロを再生

1

作成したマクロをクリックする

iMacrosでブログ投稿日ランダムの手順

2

Playを押す

Playを押すごとにランダムに数字が変わります。
imacros-play

2. ランダムに『文字』を入力

先ほどの数字とは違い、英語がいっぱい並んでいるので難しいように見えると思います。

でも、変更する箇所を覚えれば簡単にカスタマイズして使えます。

①ローマ字編

サンプルマクロ
文字ランダム【練習用フォーム】に、PLAYを押すたびにローマ字がランダムに変わる。

作業の流れ

STEP.1
マクロを作成
文字ランダム【練習用フォーム】に文字を適当に入力する。
STEP.2
マクロを編集
自動で作成されたマクロに、コマンドを追加したり編集する。
STEP.3
マクロを再生

※動画(約2分)を確認後、下の解説を読んで頂くと分かりやすいと思います。


【STEP.1】マクロを作成

1

文字ランダム【練習用フォーム】にアクセス

https://teilab-sub.net/?p=126

2

記憶を開始する

imacros-recored

3

フォームに文字を記入する

iMacrosで文字ランダムの手順

4

記憶を終了する

imacros-stop

5

名前を変更する(省略可)

「#Current.iim」から「文字ランダム.iim」に変更しておきましょう。
マクロ名の変更
iMacrosで文字ランダムの手順


【STEP.2】マクロを編集

1

編集画面を開く

iMacrosで文字ランダムの手順
先ほど自動で作成されたマクロは以下のようになっています。

iim
VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=https://teilab-sub.net/?p=126
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=126#wpcf7-f123-p126-o1 ATTR=NAME:text CONTENT=テスト
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/?p=126#wpcf7-f123-p126-o1 ATTR=*

2

マクロを編集する

赤色:追加した部分
オレンジ色:変更した部分
緑色:メモ書き(コメントアウト)
iim
VERSION BUILD=8970419 RECORDER=FX
TAB T=1

'文字ランダム【練習用フォーム】アクセス
URL GOTO=https://teilab-sub.net/?p=126

'a~zの中からランダムで10個選ぶ
SET !VAR1 EVAL("var letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','w','x','y','z']; var string = ''; for(var i = 0; i < 10; i++){string += letters[parseInt(Math.random() * 25)]}; string")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=126#wpcf7-f123-p126-o1 ATTR=NAME:text CONTENT={{!VAR1}}

'確認をクリック
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/?p=126#wpcf7-f123-p126-o1 ATTR=*

【STEP.3】マクロを再生

1

作成したマクロをクリックする

iMacrosで文字ランダムの手順

2

Playを押す

imacros-play


②ひらがな、漢字編

ローマ字以外にひらがな、漢字や文章などでもランダム入力が可能です。
※作成方法は前の項目と同じなので省略しています。

参考にいくつか紹介しておきます。

iim
'ひらがな(46文字)の中からランダムで5個選ぶ
SET !VAR1 EVAL("var letters = ['あ','い','う','え','お','か','き','く','け','こ','さ','し','す','せ','そ','た','ち','つ','て','と','な','に','ぬ','ね','の','は','ひ','ふ','へ','ほ','ま','み','む','め','も','や','ゆ','よ','ら','り','る','れ','ろ','わ','を','ん']; var string = ''; for(var i = 0; i < 5; i++){string += letters[parseInt(Math.random() * 46)]}; string")

'7色から2個選ぶ
SET !VAR1 EVAL("var letters = ['赤色','青色','黄色','緑色','紫色','灰色','黒色']; var string = ''; for(var i = 0; i < 2; i++){string += letters[parseInt(Math.random() * 7)]}; string")

'5つの文章から1個選ぶ
SET !VAR1 EVAL("var letters = ['今日は雨です。','今日は晴れです。','今日は曇りです。','今日は雪です。','今日は雷です。']; var string = ''; for(var i = 0; i < 1; i++){string += letters[parseInt(Math.random() * 5)]}; string")

右にスライドすると見えてくる、「紫色」「青色」の数値を変更するとカスタマイズできます。

  • 「紫色」=全体の個数
    文字数ではなく‘〇〇’(点と点)で囲われた数です。
  • 「青色」=選ぶ個数を指定する

ノーノちゃん

何を入れても大丈夫ってこと?
はい!ただ’〇〇’で囲った後は必ず,(半角カンマ)を入れてくださいね。多くなると忘れることがあります。

テイくん

3. ランダムに『数値、文字』を入力

数値と文字のランダムマクロを複数組み合わせることもできます。

例えばID、パスワードやメールアドレスなどを複数作成するときに使うと便利です。

サンプルで作成した下記のマクロを再生してみましょう。

iim
VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=https://teilab-sub.net/?p=126
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10+ 1); randomNumber;")
SET !VAR2 EVAL("var letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','w','x','y','z']; var string = ''; for(var i = 0; i < 10; i++){string += letters[parseInt(Math.random() * 25)]}; string")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/?p=126#wpcf7-f123-p126-o1 ATTR=NAME:text CONTENT={{!VAR1}}{{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/?p=126#wpcf7-f123-p126-o1 ATTR=*

ノーノちゃん

なるほど、組み合わせしても使えるので便利だね
はい!サンプルは2個ですが、3個以上の組み合わせも可能です。

テイくん

4. コマンドの解説

EVAL

EVALはJavascriptをここから使います!と命令を出すコマンドです。

それと、ランダムに数値や文字を入れる以外にも違う使い方もできます。

使用例
  • 特定の値を比較して条件付きで保存する
  • 特定の日にちを取得する
  • EXTRACTコマンドで抜き出した値を改変する

上記はある程度Javascriptが分かる方でないと作成することが難しいです。

分からない場合は無理に覚えなくても、iMacrosだけで十分使えますのでご安心してくださいね。

詳しく知りたい方はこちら
参考 EVALiMacros Wiki(英語)

5. よくあるエラー事例

)(半角括弧)(クオーテーションマーク)などが抜けていたり全角になっている時に表示されるエラーです。

サンプルマクロをコピペし直してから編集しましょう。

厳密に言うと少し違いますが、上のエラーと同じように)(半角括弧)(クオーテーションマーク)などが抜けていたり全角になっている時に表示されるエラーです。

サンプルマクロをコピペし直してから編集しましょう。

全体の文字数の数値[parseInt(Math.random() * ◯◯)]};が間違っている可能性があります。

再度「ひらがな、漢字編」を見直してみましょう。

6. まとめ

今回【PART.7】ではEVALの使い方についてお伝えしました。

プログラム言語のJavascriptが出てきましたので、難しく感じてしまった方もいると思います。

文中でもご説明しましたが無理に覚える必要はなく、分かる部分だけコピペして使いましょう。

【PART.7】まとめ
  • EVALはJavascriptを使うためのコマンド
  • ランダムに数値や文字を入力できる
  • 自分で作成するのではなくコピペでOK!

次回予告

次回【PART.8】はマウス操作(左クリック)の自動化する方法です。

特定の場所をクリックするマクロが作成できなかった場合、回避策として使うことができます。
iMacrosマウス操作を自動(コマンドCLICK)) iMacros:CLICKコマンドでマウス操作を自動化(Firefox専用)【PART.8】