gpt4 book ai didi

c# - 如何从另一个用 AngularJS 构建的网站上抓取数据?

转载 作者:行者123 更新时间:2023-11-30 18:15:03 25 4
gpt4 key购买 nike

我必须从另一个用 AngularJS 构建的网页获取一些特定数据。

到目前为止我做了什么:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "GET";
response = request.GetResponse();
reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
result = reader.ReadToEnd();

HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(result);

它没有返回正确的 HTML,我想(在搜索之后)该站点返回了 4 个项目,但页面源代码只显示了一个具有这种 {{item.name}} 语法类型的项目。

如何解决这个问题?

最佳答案

如果您使用HttpWebRequest,它只会返回给您HTML 模板,它不会包含任何数据。由于 Angular 的性质,数据绑定(bind)稍后会在使用 JavaScript 时发生。

我建议您使用 WebBrowser 控件而不是 HttpWebRequest 进行数据抓取。使用 WebBrowser,您应该能够在初始化 $scope 并将数据添加到 DOM 后获得完整的 HTML。

要了解有关如何在 ASP.NET 中使用 WebBrowser 的更多信息,您可以查看此 link

关于c# - 如何从另一个用 AngularJS 构建的网站上抓取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49166318/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com