【发布时间】:2009-04-25 18:35:33
【问题描述】:
好的,我有一个非常令人沮丧的问题。我正在解析一个网页,需要让它执行 javascript 才能获得我想要的信息。
Form f = new Form();
WebBrowser w = new WebBrowser();
w.Navigate(url);
f.Controls.Add(w);
f.ShowDialog();
HtmlElementCollection hc = w.Document.GetElementsByTagName("button");
这很有效,我可以很好地获得按钮元素,但是每次运行它时都会弹出一个窗口。很烦人。弹出窗口是基于 javascript 的,我需要运行 Javascript 来获取按钮元素信息。这是弹出窗口的脚本。
<script>
var evilPopup = (getCookieVar("markOpen","PromoPop") == 1);
if (evilPopup != 1)
{
PromoPop = window.open('/browse/info.aspx?cid=36193','Advertisement', 'width=365,height=262,screenX=100,screenY=100');
if (PromoPop)
{
PromoPop.blur();
window.focus();
setCookieVar("markOpen","PromoPop","1");
}
}
</script>
我尝试向 Forms.Webbrowser 控件添加一个 cookie,但感到沮丧并放弃了。我尝试设置 NoAllowNavagate 属性和其他一切都无济于事。
有人可以帮忙吗?另外,有没有办法从 Console.App 获取 DomDocument 信息而无需打开表单?
谢谢
【问题讨论】:
标签: .net javascript popup webbrowser-control console-application