如何获取网页内容并将其保存到字符串变量中
如何使用 ASP.NET 获取网页内容?我需要编写一个程序来获取网页的 HTML 并将其存储到字符串变量中。
How I can get the content of the web page using ASP.NET? I need to write a program to get the HTML of a webpage and store it into a string variable.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您可以使用 网络客户端
You can use the WebClient
我之前遇到过 Webclient.Downloadstring 的问题。如果你这样做,你可以尝试这个:
I've run into issues with Webclient.Downloadstring before. If you do, you can try this:
我建议不要使用
WebClient.DownloadString
。这是因为(至少在 .NET 3.5 中)DownloadString 不够智能,无法使用/删除 BOM(如果存在)。这可能会导致 BOM (< code>) 在返回 UTF-8 数据时错误地显示为字符串的一部分(至少没有字符集) - 糟糕!相反,这种细微的变化将在 BOM 中正常工作:
I recommend not using
WebClient.DownloadString
. This is because (at least in .NET 3.5) DownloadString is not smart enough to use/remove the BOM, should it be present. This can result in the BOM (
) incorrectly appearing as part of the string when UTF-8 data is returned (at least without a charset) - ick!Instead, this slight variation will work correctly with BOMs:
传递你想要获取的页面的URL。您可以使用 htmlagilitypack 解析结果。
Pass the URL of page who you want to get. You can parse the result using htmlagilitypack.
我一直在使用 WebClient,但在发表这篇文章时(.NET 6 可用),WebClient 已被弃用。
首选方式是
I have always been using WebClient, but at the time this post is made (.NET 6 is avail), WebClient is getting deprecated.
The preferred way is