解決済

clip!clip!
Ads By Google

VBScriptでフレームの名前を取得しようとすると下のようなエラーが出て困っています。
色々調べたのですがどう対策したらよいかわかりません・・・



::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
エラー: アクセスが拒否されました。
コード: 80070005
ソース: (null)
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Option Explicit

Dim URL
Dim objIE
Dim Count
Dim TextBody
Dim strText
Dim FindText

FindText = "議長"

URL = " ;

Set objIE = WScript.CreateObject("InternetExplorer.Application")
If Err.Number = 0 Then
objIE.Navigate URL
objIE.Visible = True
Do Until objIE.Busy = False
WScript.sleep(250)
Loop

Count = objIE.Document.getElementsByTagName("frame").length
Msgbox "対象タグは" & Count & "個"
msgbox objIE.Document.frames(0).name
msgbox objIE.Document.frames(1).name
msgbox objIE.Document.frames(2).name
msgbox objIE.Document.frames("f2_main").Document.Body.InnerText
msgbox objIE.Document.frames(2).Document.Body.InnerText
TextBody = objIE.Document.frames(2).Document.Body.InnerText
strText = InStr(1, TextBody, FindText)
If strText > 0 Then
msgbox "いたいた!"
Else
msgbox "おーい息子さん探してきてよ"
End If
Else

WScript.Echo " ダメ" & Err.Description
End If

テスト的に衆議院のページでやってみると出来るのですが・・・
別ページ(公開は出来なくすみません・・・構成もよくわからないページです)だとどうしてもうまくいきません。
ただし、
Count = objIE.Document.getElementsByTagName("frame").length
Msgbox "対象タグは" & Count & "個"でフレームの個数は拾ってくることが出来ます。
どうやら3つで構成されていることはわかりましたが、、、
フレームの名前を拾おうとするとどうしても上記のようなエラーが出ます。
どうしたらよいでしょうか?

2008-12-08 23:33の質問
この質問と回答を読んで役に立った場合は「役に立つ質問」に投票してください。投票が多い質問は、役に立つ質問一覧に掲載され、より多くの人に見てもらうことができます。

回答(1)

1.

2008-12-09 03:23:43ベスト
別ドメイン(同一ページに表示されているが別フレームになっているようなもので表示サイトが異なる)の内容は例え名前だけであったとしても読み出すことはできません。
自信度 : 自信あり 回答レベル : 回答
Ads By Google

コメント

まだコメントがありません

トラックバック(2)

トラックバックURL: