日本の情報発信基地

タグ内のタグにアクセスする_InternetExplorer

 
UWSC

スポンサーリンク

タグ内のタグにアクセスする

タグ内のタグにアクセスする

obj = IE.document.getElementByIdなどでオブジェクトを取得
obj= obj.getElementsByTagName

タグの中にあるタグの情報にアクセスする

HTMLのタグは、タグの中にタグを記述することができます。例えば以下のような構造だとします。[Webページはこちら]

<div id="MainText">
 <p>Hello Boys</p>
 <p>And how's going Girls</p>
 <p>My name is Andy. Nice to meet you.</p>
</div>

上記はタグの中にタグがある「入れ子」という構造になっています。getElementsByTagNameでpを取得することもできますが、
まずはdiv(MainText)から取得して、その子であるpを取得する手法を説明します。

IE = CREATEOLEOBJ("InternetExplorer.Application")
IE.visible = True
IE.navigate("http://canal22.org/sample0016/")
REPEAT
  SLEEP(0.1)
UNTIL !IE.busy AND IE.readyState = 4
obj  = IE.document.getElementByID("MainText")
objP = obj.getElementsByTagName("p")
FOR A = 0 TO (objP.length - 1)
  PRINT (A+1) + "番目のp:" + objP.item(A).innerText
NEXT

親子のタグが複数ある場合でも大丈夫

最初から親のタグとその中にある子タグが分かっている場合は、範囲を限定しながら取得することができます

先ほどのサンプルでは、アクセスしたページの最初のdiv要素しか取得していません。
全てのdivタグの中にあるpを取得するプログラムは下記のようになります。

 

IE = CREATEOLEOBJ("InternetExplorer.Application")
IE.visible = True
IE.navigate("http://canal22.org/sample0016/")
REPEAT
  SLEEP(0.1)
UNTIL !IE.busy AND IE.readyState = 4
obj  = IE.document.getElementsByTagName("div")
FOR A = 0 TO (obj.length -1)
  objP = obj.item(A).getElementsByTagName("p")
  FOR B = 0 TO (objP.length - 1)
    PRINT (A+1) + "番目のdivの" + (B+1) + "番目のp:" + objP.item(B).innerText
  NEXT
NEXT

親子を指定して、タグの中身を取得できました。

スポンサーリンク

http://canal22.org/advance/ie/parent-child-ta/

スポンサーリンク

- Comments -

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Copyright© ヒカルの情報ブログ , 2018 All Rights Reserved.