最近开发一个小功能,数据库中一个基础表的数据从另一个网站采集。
因为网站的数据不定时更新,需要更新后自动采集最新的内容。
怎么判断更新数据没有?
好在网站有一个更新日志提示的地方,只需要对比本地保留的更新日志和最新日志是否一致。
解析网页源码是个难点,有使用正则表达式的。
但我对正则表达式使用不多,搜索了下在网上找了个开源类库ScrapySharp。
为什么使用这个类库了?
因为可以使用JQuery的css选择器方便的解析网页。
现在就这块的代码贴出来,需要的人可以参照下。
var browser = new ScrapingBrowser(); browser.Encoding = System.Text.Encoding.UTF8; string html = browser.DownloadString(new Uri("urlAddress"));//获取网页的源码 var doc = new HtmlAgilityPack.HtmlDocument(); doc.LoadHtml(html); var docNode = doc.DocumentNode; IEnumerable<HtmlNode> nodes = docNode.CssSelect(".className");//使用css类选择器获取节点 string text = row_0_s.ElementAt(0).InnerText;//获取标签的文本