我正在学习用C语言刮屏,我想知道
我怎样才能将收集到的html的某些片段分开,
我正在使用htmlAgilityPack和ScrapySharp库进行抓取,因此使用此代码,我可以检索一个html页面:
WebPage PageResult = Browser.NavigateToPage(new Uri("localhost"));
Console.WriteLine(PageResult);
当然,我会用所有语法和混乱的代码返回整个源代码,但是如果我只想捕获
<h2></h2>
标记之间的数据,而忽略所有其他标记呢?我非常简单的伪代码是:
If result reads h2
Trim all behind
start writing out after
If result reads /h2
stop writing
Trim anything that comes after
我面临的主要问题是,我如何在规则中
feed
,即当我读取h2
从之前开始修剪所有内容时,在之后写入数据,如果出现/h2
,则停止并修剪结果的结尾? 最佳答案
有几种方法可以实现这一点,其中一种方法是将页面变红为XML并解析您要查找的数据,
这可以通过使用,
希勒姆
XML元素
X文件
等。
第二种方法是使用第三方库,比如HtmlAgilityPack,它也支持XPath,
var nodes=doc.DocumentNode.SelectNodes(“//form//input”);
关于c# - 使用给定的起点和终点从html分离出一定的数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53467989/