TAG【iMacrosコマンド一覧】
コマンド概要
TAGコマンドは、現在のWebページからHTML要素を選択します。 要素の識別は、
- 要素の形式、位置、属性
- 要素へのXPATH
- 要素のCSSセレクタ
です。選択された要素がリンクである場合、リンク内に飛びます。すなわち、TAGコマンドは、要素をクリックするように動作します。 選択された要素が入力フォームやその一部である場合は、CONTENTパラメータを使用して、選択したフィールドにコンテンツを埋め込むことができます。
使い方
1 |
TAG POS=n TYPE=type [FORM=form] ATTR=attr [CONTENT=some_content] |
もしくは、
1 |
TAG XPATH="[xpath_expression]" [CONTENT=some_content] |
もしくは、
1 |
TAG SELECTOR="[selector_expression]" [CONTENT=some_content] |
引数
- POS=n
HTML要素内で登場した順番を指定します。デフォルトでは、登場した順番はページの上部から数えられます。”POS = Rx”を使用することで、登場した順番は前のTAGコマンドを基準にして相対的に指定することもできます。 - TYPE=type
要素のHTML形式を指定します。 - FORM=form
formの親要素の名前を指定します(formの子要素に対してのみ有効)。 - ATTR
選択する要素の識別子を指定します。 - CONTENT
選択した要素に送信するコンテンツを指定します(FORM子要素に対してのみ有効)。スペースは<SP>に置き換えてください(CONTENT = Hello <SP> world)。または二重引用符で囲むことでもスペースを使えます(CONTENT = “Hello World”)。
二重中括弧は#NOVAR#でエスケープする必要があります。CONTENT =#NOVAR#{{値}}は{{値}}を変数参照型ではなくリテラル値として扱います。 - EXTRACT
抽出する種類を指定します。 - XPATH
ページ上の要素を制限します。 - SELECTOR
ページ上の要素を識別するCSSセレクタを指定します。
注意点
TYPE、FORMおよびATTRパラメータでは、サブパラメータが使用できます。サブパラメータは、「form = サブパラメータ:値」という形で使用されます。特にATTRパラメータでは、ワイルドカード文字 ‘*’を使うことができます。iMacrosのバージョン6.0以降ではEXTRACT機能も組み込まれています。EXTRACTパラメータを使用することで、実行する抽出のタイプを識別しできます。TAGとHTMLソースコードにの関係は以下の説明を参照してください。
リンクをたどる
リンクをたどるためには、TAGコマンドのTYPEパラメータをAに設定します。テキストリンクの場合、FORMパラメータは必要ありません。たどるリンクは、POSおよびATTRパラメータによってのみ決定されます。ページ上の出現回数(POSパラメータによって決定される)を除いて、リンクは名前とURLによって一意に識別されます。したがって、ATTRパラメータには、TXTとHREFという以下の2つサブパラメータが用意されています。名前でリンクを選択するには、
- ATTR = TXT:[名前] → URLを使用して選択する
- ATTR = HREF:[url] → TAGコマンドを実行するのに十分な時間待機しない場合があります。そのときは、!TIMEOUT_STEPを使って待機時間を増やすことで回避できます。
リンクをたどるのを避ける方法
リンクをたどることやボタンをクリックするのをを避けるために、「TAG … EXTRACT = TXT」を使用する必要があります。この場合、EXTRACTを指定したTAGコマンドを実行する前に「SET!EXTRACT NULL」を指定してEXTRACTという変数をクリアをする必要があります。
タイムアウト
ページが読み込まれた直後にテキストが表示されないことがあります。そのページの例としては、何らかの種類の「処理要求」メッセージを表示するajaxyのWebサイトやページがあります。したがって、処理が完了したというテキストが表示されるのを待つ必要がある場合は、TAGコマンドを自動的にそのような処理機能を持たせておくことをお勧めします。TAGコマンドは「!TIMEOUT_STEP」秒後、毎秒テキストがあるかどうかを確認します。デフォルトの待ち時間は6秒です。
入力フォームに記入する
1つのWebページでは、いくつかの入力フォームが表示される可能性があるため、FORMパラメーターはNAMEサブパラメーターで使用するフォームを決定します。入力タイプは、「TYPE」パラメータを使用して、必要に応じてサブパラメータ「INPUT」を使用して選択します。
ドロップダウンメニュー用のTAGコマンド
「CONTENT」パラメータは、「HTML SELECT」コマンドによって生成されたドロップダウンメニューのどのエレメントが選択されているかを指定するために使用されます。
1 2 3 4 5 6 |
<select name="select1"> <option value="">Select Fruits</option> <option value="AP 1">Apple</option> <option value="BN">Banana</option> <option value="Special">Kiwi</option> </select> |
デフォルトでは、「TYPE=SELECT」の「CONTENT」パラメータには、オプションの値が格納されていればその値となります。それ以外の場合は、iMacrosは選択したオプションの表示名を使用します。また、選択したリスト内の位置(インデックスとも呼ばれます)でも指定が可能です。
名前、インデックス、または値によって選択を決定する場合、手動で変更することができます。メニュー項目の名前は、ドロップダウンメニューに表示されるテキストです。値は、「OPTION」タグの「VALUE = “テキスト”」のテキスト部分です。インデックスは、リスト内のオプションの位置で、上から1,2…の値をとります。名前で項目を選択する場合は、名前の前に「$」を付け、コマンドは次のようになります。
1 |
TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=$Apple |
値で項目を選択するには、パーセント記号(%)を使用します。
1 |
TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=%AP<SP>1 |
インデックスで項目を選択するには、#記号を使用します。
1 |
TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=#2 |
空白は<SP>と書くか、二重引用符( “)で囲む必要があります。
1 2 |
TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=$French<SP>Fries TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=$"Bread & Butter" |
後者の2つの場合の比較では大文字と小文字が区別されます。また、ワイルドカード(*)が使用できます。
複数の選択メニューでは、コロン(:)で区切られたインデックスを一覧表示することによって、複数の選択を行うことができます。
1 2 |
TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=$Apple:$*berry*:$Peach TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=#1:#3:#8 |
選択項目のすべての値を選択するには、「CONTENT=ALL」を使用します。iimPlayを使ってマクロを開始し、選択範囲にない値を選択すると、iimPlayコマンドは可能な最大行数のエラーコードを返します。
FirefoxとChromeにおけるiMacrosの注意点
変数に$、%、#記号を使用する場合、記号は{{..}}の外になければなりません。したがって、iMacrosは解析中に変数の型を見ることができます。 これは、使用前に型を宣言しなければならない他のスクリプト言語と同じです。
以下は動作しないコードの例です(FirefoxまたはChromeの場合)。
1 2 3 |
'間違った例 SET !VAR1 $*apple* TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT={{!VAR1}} |
正しくは以下のようにします。
1 2 3 |
'正しい例 SET !VAR1 *apple* TAG POS=1 TYPE=SELECT FORM=NAME:form1 ATTR=NAME:select1 CONTENT=${{!VAR1}} |
サンプルコード
なし
関連コマンドと変数
自動化プログラムの作成を依頼しませんか?
幣サイトでは、Windowsパソコンの自動化プログラムの作成サービスを行っています。
本サービスの特徴は、
・安価な値段
・個人から法人までどなたでも対応
・お客様の要望を全力で実現
です。
安いからといって、決して手は抜きません。
まずは、下のボタンからWindowsパソコンの自動化プログラムの作成サービスの詳細をご確認ください。