这是问题:
我在 IE 中有一个钩子,它对WebBrowser.OnNavigateComplete2
事件做出反应以解析文档的内容以获得一些精确的信息。
该文档包含框架,因此我查看了HTMLDocument.frames
. 对于每一个,我都会查看 document.body.outerHTML 属性以检查内容。
问题是,我正在寻找的字符串永远不会在那里显示,而它显示在结局页面中。那么,我是不是找错地方了?如果它在页面完全加载时显示,那么它会在某个时候下载,对吗?但我应该看哪个对象?
顺便说一句,我不知道这是否重要,但我正在搜索的页面来自 ASP.NET 应用程序。
public void OnNavigateComplete2(object pDisp, ref object url)
{
document = (HTMLDocument)webBrowser.Document;
mshtml.FramesCollection frames = document.frames;
for (int i = 0; i < frames.length; i++)
{
object refIdx = i;
IHTMLWindow2 frame = (IHTMLWindow2)frames.item(ref refIdx);
string frameContent = frame.document.body.outerHTML;
}
}
感谢您的帮助。
@rams 每个页面都会多次启动此事件,所以我认为这是每次加载框架时,即使我没有赶上我正在寻找的那个。如果没有,捕获帧内容的事件是什么?
我想要做的是在精确的框架上检测一些精确的信息,然后保存它。稍后,某个用户操作触发了一个网页加载,我需要从解析框架中获得的信息。