这是我第一次发帖。我一直在做一个"网页抓取器",可以浏览网站并下载Excel文件或。CSV文件自动。
当我想下载文件时遇到了一个问题。这是HTML:
<"a class="PSQRYRESULTSTITLE" href="javascript: bSubmitted=false;submitAction_win2(document.win2,'#ICQryDownloadRaw');">CSV Text File<"/a>
单击会打开一个下载提示进行保存。
- 如何触发此提示
- 我可以绕过提示,让它自动下载吗
我正在Visual Studio C#2008中对此进行编码。我正在使用WebBrowser控件浏览网站。
我已经试过了webbrowser1.document.invokescript
到将所有元素存储在HtmlElementCollection中,遍历它们并执行invokemember("单击")。。。
什么都不起作用!请帮忙!
- 尝试使用值为
"javascript: bSubmitted=false;submitAction_win2(document.win2,'#ICQryDownloadRaw');"
的字符串参数调用脚本eval - 您可以对url进行有根据的猜测,并使用
UrlDownloadToFile
将其下载到您的位置,或者在UrlDownloadToFile
失败的情况下再次请求下载该文件
foreach (HtmlElement i in webBrowser1.Document.All)
{
if (i.OuterText == "CSV Text File" && i.GetAttribute("href") != "")
{
webBrowser1.Navigate(i.GetAttribute("href"));
}
}
尽管这并不能回答我的第二个问题,即如何自动下载文件或禁用提示,但它最终让我继续前进。但如果有人对此有答案,我们将不胜感激。