c#如何实现模拟点击按钮提交网页,并下载点击后自动生成的Excel文件
我要批量下载一个网站的Excel文件。但这个Excel文件是要先点击网页上的ButtonSummit按钮,提交后,才会自动生成。
按钮的提交操作我已实现了,具体代码如下:
private void button2_Click(object sender, EventArgs e)
{
webBrowser1.ScriptErrorsSuppressed = true;
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted1);
webBrowser1.Navigate("http://www.测试.com/generate.aspx"); //打开目标URL
}
private void webBrowser1_DocumentCompleted1(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (e.Url != webBrowser1.Document.Url) return;
HtmlDocument doc = webBrowser1.Document; //获取document对象
HtmlElement btn = null;
foreach (HtmlElement em in doc.All) //轮循
{
string str = em.Name;
if ((str == "submit")) //减少处理
{
btn = em;
break; //获取submit按钮
}
}
if (btn != null)
btn.InvokeMember("click"); //触发submit事件
}
但是,它生成的EXcel我不知道怎么实现自动下载了。
现在运行后,会自动弹出下载框,需要手工点击保存。
哪位高手研究过这种模拟提交、并下载提交后生成的文件的操作?
[最优解释]
沙发,顶下!
[其他解释]
ding!!
[其他解释]
学习!!!!
[其他解释]
怀疑可能性,网页都有权限问题的
[其他解释]
这个根本和权限无关!
[其他解释]
你现在需要做的就是屏蔽EXCEL下载弹出框
上次看到类似的 但是感觉这样很不安全啊
万一是木马咋办。?
[其他解释]
放弃吧,弹出下载窗口后,自己写的代码是不可能控制这个弹出窗口的,除非自己写Activex来处理下载,要不然就用外部程序来实现,比如像按键精灵之类的软件
[其他解释]
我现在也 遇到这个需求了
网上查了好多都木有查到阿
C# webbrowser 难道真的实现不了这个功能么
在CSDN上有看到用C/C++实现的