我需要一个获取页面链接并返回该页面标题的方法。
我使用了 WebClient -
var webClient = new WebClient();
var htmlString = webClient.DownloadString(_link);
它运行良好,但在外语编码方面失败了。我得到的是问号和奇怪的字符,而不是我需要的文本。
是否有一种通用的方法来识别页面的编码并使用它?如果不是全部,我需要它来支持大多数编码。
最佳答案
使用 HtmlAgilityPack你可以这样做
using (WebClient client = new WebClient())
using (var read = client.OpenRead("http://your.com"))
{
HtmlDocument doc = new HtmlDocument();
doc.Load(read, true); // true = get encoding from byte order masks
// process doc, extract title
var title = doc.DocumentNode.SelectSingleNode("//title").InnerText;
}
关于c# - 如何使用 C# 下载具有正确编码的 HTML 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5102997/