public void testMultiModel_should_not_skip_when_match() { Page page = new Page(new Request("http://codecraft.us/foo", null)); page.SetRawText("<div foo='foo'></div>"); page.SetUrl(PlainText.Create("http://codecraft.us/foo")); ModelPageProcessor modelPageProcessor = ModelPageProcessor.Create(null, typeof(ModelFoo), typeof(ModelBar)); modelPageProcessor.Process(page); Assert.IsFalse(page.GetResultItems().IsSkip); }
/// <summary> /// Create a spider /// </summary> /// <param name="identify"></param> /// <param name="site"></param> /// <param name="pageModelPipeline"></param> /// <param name="pageModels"></param> public OoSpider(string identify, Site site, IPageModelPipeline pageModelPipeline, params Type[] pageModels) : this(identify, ModelPageProcessor.Create(site, pageModels)) { // Check ΪʲôҪ���һ��modelpipeline _modelPipeline = new ModelPipeline(); AddPipeline(_modelPipeline); foreach (Type pageModel in pageModels) { if (pageModelPipeline != null) { _modelPipeline.Put(pageModel, pageModelPipeline); } _pageModelTypes.Add(pageModel); } }