如何在没有onClick的情况下关注Javascript链接

时间:2012-08-01 21:20:36

标签: javascript visual-studio-2008 webbrowser-control visual-c#-express-2010

这是我第一次发帖。我一直在研究“网络刮刀”来浏览网站并自动下载Excel文件或.CSV文件。

我想要下载文件时遇到问题。这是HTML:

<"a class="PSQRYRESULTSTITLE" href="javascript: bSubmitted=false;submitAction_win2(document.win2,'#ICQryDownloadRaw');">CSV Text File<"/a>

单击时会打开下载提示进行保存。

  1. 如何触发此提示?
  2. 我可以绕过提示,以便自动下载吗?
  3. 我在Visual Studio C#2008中对此进行了编码。我正在使用WebBrowser控件来浏览网站。

    我已经尝试了一切 webbrowser1.document.invokescript 至 将所有元素存储在遍历它们并执行的HtmlElementCollection中 invokemember( “点击”)...

    什么都没有用!请帮忙!

2 个答案:

答案 0 :(得分:0)

  1. 尝试使用值为"javascript: bSubmitted=false;submitAction_win2(document.win2,'#ICQryDownloadRaw');"
  2. 的字符串参数的invokescript eval
  3. 您可以对网址进行有根据的猜测,并使用UrlDownloadToFile将其下载到您的位置,或者在UrlDownloadToFile失败时再发出下载该文件的网络请求。

答案 1 :(得分:0)

foreach (HtmlElement i in webBrowser1.Document.All)
    {
        if (i.OuterText == "CSV Text File" && i.GetAttribute("href") != "")
        {
            webBrowser1.Navigate(i.GetAttribute("href"));
        }
    }

虽然这不能回答我关于如何自动下载文件或禁用提示的第二个问题,但它最终让我前进了。但如果有人对此有答案,那将非常感激。