public void TestCreateRule() { //RuleLiteDB.Remove(1); var rule = new RuleModel(); rule.Url = "http://www.ruijihg.com/2018/05/24/json-net-%e5%8f%8d%e5%ba%8f%e5%88%97%e5%8c%96%e6%8e%a5%e5%8f%a3%e9%9b%86%e5%90%88/"; rule.Domain = new Uri(rule.Url).GetDomain(); rule.Expression = "http://www.ruijihg.com/????/??/??/*"; var block = new ExtractBlock() { Selectors = new List <ISelector> { new CssSelector("#main", CssTypeEnum.InnerHtml) }, Metas = new ExtractMetaCollection() }; block.Metas.AddMeta("time", new List <ISelector> { new CssSelector("time", CssTypeEnum.Text) }); block.Metas.AddMeta("author", new List <ISelector> { new CssSelector(".author", CssTypeEnum.Text) }); block.Metas.AddMeta("content", new List <ISelector> { new CssSelector(".entry-content", CssTypeEnum.InnerHtml) }); rule.BlockExpression = JsonConvert.SerializeObject(block); //rule.Id = 1; RuleLiteDB.AddOrUpdate(rule); Assert.IsTrue(rule.Id > 0); }
public void UpdateRule(RuleModel rule) { RuleLiteDB.AddOrUpdate(rule); }