mei*_*rlo 4 c# html-agility-pack
我正在尝试从HTML文档中获取文本的简单任务.所以我正在使用HTMLdoc.DocumentNode.InnerText.问题是,在某些网站上,当它们位于不同的标签中时,不要在单词之间放置空格.在这些情况下,DocumentNode.InnerText将这些单词连接成一个,它就变得毫无用处.
例如,我正在尝试阅读包含该行的网站
<span>?stanbul</span><ul><li><a href="i1.htm">Adana</a></li>
Run Code Online (Sandbox Code Playgroud)
我得到了"İstanbulAdana",这是毫无意义的.
我在HTMLAgilityPack文档和Google上找不到任何解决方案
我错过了什么吗?
谢谢,
shr*_*iek 10
这应该很容易做到.
const string html = @"<span>?stanbul</span><ul><li><a href=""i1.htm"">Adana</a></li>";
var doc = new HtmlDocument();
doc.LoadHtml(html);
string result = string.Join(" ", doc.DocumentNode.Descendants()
.Where(n => !n.HasChildNodes && !string.IsNullOrWhiteSpace(n.InnerText))
.Select(n => n.InnerText));
Console.WriteLine(result); // prints "?stanbul Adana"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1344 次 |
| 最近记录: |