<VBAでIE操作 ー GetElementByTagName("a")でa要素の取得ができるサイトとできないサイトがある>
VBA超初心者です。
下記コードにて、社内イントラサイトのHTMLの
<aタグ>の数をイミディエイトウインドウに出力
させようとしています。
下記2つのサイトで検証したのですが、
サイトURL①については問題なく出力されますが、
サイトURL②で試した場合、a要素があるにもかかわらず
”0”と出力され、情報が取得できません。
考えられる原因は何でしょうか。
サイトURL①・・・社内システムへのログイン画面
サイトURL②・・・社内のディレクトリ情報(個人情報)を掲載しているページ
参考として、両サイトのHTMLのa要素の1例を下記に記載します。
②は、セキュリティ上、HTMLが取得できない制限のようなものが
かけられている可能性はありますでしょうか...
###VBA
Sub GetATagTest() Dim ie As InternetExplorer Dim HTMLDoc As HTMLDocument Set ie = New InternetExplorerMedium ie.Visible = True ie.navigate "社内イントラサイトURL" Do While ie.Busy = True Or ie.readyState <> READYSTATE_COMPLETE DoEvents Loop Set HTMLDoc = ie.document Debug.Print HTMLDoc.getElementsByTagName("a").Length End Sub
サイトURL①のa要素 1例
<td> <a href=".....">....</a> </td>
サイトURL②のa要素 1例
<div class="collapsible-body" style="display: block;"> <a class="..." href="..." target="..." data-tooltip="..." data-tooltip-id="...">...</a> </div>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/04 02:01
2020/06/04 03:27
2020/06/04 03:53 編集
2020/06/04 04:03
2020/06/04 04:33