解析html时字符被问号替换
我正在使用 HtmlAgilityPack 读取解析 html 文件并提取一些文本:
static void Main(string[] args)
{
var webGet = new HtmlWeb();
var document = webGet.Load("http://port.ro/");
var programs = from program in document.DocumentNode.Descendants()
where program.Name == "a" && program.Attributes["href"] != null && program.InnerText.Trim().Length > 0
select program.InnerText ;
foreach (string s in programs)
{
Console.WriteLine(s);
}
Console.ReadLine();
}
我的问题是网站包含像 à
这样的字符,当我打印它们时,它们被 ?
替换>。
当我打印文本并将字符 à
替换为 a
或像 à
那样打印时,我应该做什么?
I am using HtmlAgilityPack to read a parse a html file and extract some text:
static void Main(string[] args)
{
var webGet = new HtmlWeb();
var document = webGet.Load("http://port.ro/");
var programs = from program in document.DocumentNode.Descendants()
where program.Name == "a" && program.Attributes["href"] != null && program.InnerText.Trim().Length > 0
select program.InnerText ;
foreach (string s in programs)
{
Console.WriteLine(s);
}
Console.ReadLine();
}
My problem is that the website contains characters like à
and when I print them, they are replaced by ?
.
What should I need to do so when I print the text the character à
its replaced by a
or print it like à
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您是否尝试使用或设置网站所需的编码。这应该可以帮助您获得正确的文本
以上是针对
HtmlWeb的 html文档
试试这个:
Did you try using or set the encoding as required for the site. This should help you get the proper text
Above one is for htmldocument
for HtmlWeb
Try this:
在
HtmlAgility
中有设置流编码的属性(通常它应该自动检测编码),但可能不适用于您的页面..(错误的元标记等..)In
HtmlAgility
there is property to set stream encoding (normaly it should autodetect encoding ) but maybe not working for your page.. (wrong meta tags etc..)