我正在寻找一个免费的工具或 dll,我可以使用它们在 .NET 中编写自己的代码来处理一些 Web 请求。假设我有一个带有一些类似于http://www.example.com?param=1的查询字符串参数的 URL ,当我在浏览器中使用它时会发生几次重定向,最终呈现具有框架集和框架内部的 HTML html 包含一个包含我需要的数据的表。我想将此数据以 CSV 格式存储在外部文件中。显然,数据根据查询字符串参数param不同。假设我想运行应用程序并为从 1 到 1000 的参数值生成 1000 个 CSV 文件。
我对 .NET、javascript、HTML 有很好的了解,但主要问题是如何在服务器代码中获取最终的 HTML。
我尝试的是创建一个新的表单应用程序,添加一个 webbrowser 控件并使用如下代码:
private void FormMain_Shown(object sender, EventArgs e)
{
var param = 1; //test
var url = string.Format(Constants.URL_PATTERN, param);
WebBrowserMain.Navigated += WebBrowserMain_Navigated;
WebBrowserMain.Navigate(url);
}
void WebBrowserMain_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
if (e.Url.OriginalString == Constants.FINAL_URL)
{
var document = WebBrowserMain.Document.Window.Frames[0].Document;
}
}
但不幸的是,我收到了未授权访问异常,因为框架和文档可能位于不同的域中。有没有人知道如何解决这个问题,也许还有另一种全新的方法来实现这样的功能?