如何使用HTMLAgilityPack解析西里尔文本?

时间:2015-04-07 14:56:10

标签: c# html parsing

遇到HtmlAgilityPack问题。我无法解析西里尔文本,它看起来像一些未知的符号。

HtmlWeb webGet = new HtmlWeb();
webGet.OverrideEncoding = Encoding.UTF8;
HtmlAgilityPack.HtmlDocument doc = webGet.Load("http://vk.com/glitchhop");
HtmlNode myNode = doc.DocumentNode.SelectSingleNode("//div[@id='page_wall_posts']/*[2]//div[@class='wall_post_text']");
if (myNode != null)
    return myNode.InnerText;
else return "Nothing found";

还附上错误示例以及该文本应如何显示

My application and wrong cyrilic text Original text from the website

1 个答案:

答案 0 :(得分:2)

此问题与HTMLAgilityPack无关,它是由您使用的错误编码引起的。

您尝试解析的网页是使用windows-1251编码进行编码的。

webGet.OverrideEncodingEncoding.UTF8更改为Encoding.GetEncoding(1251)应该会对您有所帮助。