我正在使用WebKitDotNet来模拟和自动化web浏览器。这真的很棒,而且在大多数方面都是有效的。但是,当我尝试实现此代码时,WebKit不会触发下载:
WebKitBrowser _b = null;
private void button1_Click(object sender, EventArgs e)
{
_b = new WebKitBrowser();
_b.DownloadBegin += new FileDownloadBeginEventHandler(b_DownloadBegin);
_b.Error += new WebKitBrowserErrorEventHandler(_b_Error);
_b.AllowDownloads = true;
_b.Navigate("http://sourceforge.net/projects/webkitdotnet/files/WebKit%20.NET%200.x/0.5/WebKit.NET-0.5-bin-cairo.zip/download");
}
void _b_Error(object sender, WebKitBrowserErrorEventArgs e)
{
MessageBox.Show("error!");
}
void b_DownloadBegin(object sender, FileDownloadBeginEventArgs e)
{
MessageBox.Show("hi");
}"Error“和"DownloadBegin”事件都不会触发。我希望他们中至少有一个人这样做--有没有我遗漏的设置?
编辑:我知道这是一个老问题,但这是最新的。当我写这个问题时,我试图自动化一个过程,这个过程需要一个人-每天一次-登录到网站,提供凭据,并单击下载链接。我们希望能够以编程的方式完成这项工作,以减轻负责这项工作的穷人的单调性。
不幸的是,WebKitDotNet没有成功完成这项任务。虽然在基于webkit的浏览器中,您可以单击链接并触发下载,但在嵌入式WebKitDotNet中,单击链接并不起任何作用。我的猜测是,WebKitDotNet内部的一些东西失去了事件。如果有人想测试它,您可以使用Sourceforge下载链接进行测试。
我团队中的一个人最终通过使用名为"IMacros“的Internet Explorer自动化工具解决了这个问题。我们之所以选择此产品,是因为1)我们可以保证在运行该程序的每台计算机上都安装了IE,2) IMacros可以正确接收来自网站的事件并触发文件下载。
发布于 2011-10-31 22:23:55
在问题跟踪器上有一个2011年3月24日的帖子,上面写着下载还不起作用:
https://github.com/webkitdotnet/webkitdotnet/issues/7
由于跟踪器中的问题很少,如果在此期间添加该功能,则可能会将其标记为已解决。
https://stackoverflow.com/questions/7641602
复制相似问题