示例#1
0
        public static void Describe(this ISpiderEvaluatorBase evaluator, ITextRender output)
        {
            output.AppendHeading("Crawler [" + evaluator.name + "]");

            output.AppendPair("Class name", evaluator.GetType().Name, true, ": ");

            output.AppendPair("Description", evaluator.description, true, ": ");



            if (evaluator is spiderModularEvaluatorBase)
            {
                spiderModularEvaluatorBase evaluator_spiderModularEvaluatorBase = (spiderModularEvaluatorBase)evaluator;

                foreach (var md in evaluator_spiderModularEvaluatorBase.modules)
                {
                    md.DescribeModule(output);
                }
            }



            if (evaluator is spiderEvaluatorSimpleBase)
            {
                spiderEvaluatorSimpleBase evaluator_spiderEvaluatorSimpleBase = (spiderEvaluatorSimpleBase)evaluator;

                evaluator_spiderEvaluatorSimpleBase.linkActiveRules.ToList().ForEach(x => x.DescribeRule(output));
            }


            output.AppendHorizontalLine();

            output.open("div", "General configuration", "Crawler configuration properties declared in common settings class");

            evaluator.settings.GetUserManual(output, "", true, true);

            output.close();
        }
示例#2
0
        protected void deploy(modelSpiderSiteRecord wRecord)
        {
            name        = wRecord.tRecord.instanceID + "_" + wRecord.domainInfo.domainRootName;
            crawlerName = wRecord.tRecord.instance.name;
            domainName  = wRecord.domain;


            if (wRecord.tRecord.instance is spiderModularEvaluatorBase)
            {
                spiderModularEvaluatorBase modSpider = wRecord.tRecord.instance as spiderModularEvaluatorBase;
                List <moduleDLCRecord>     dlc       = new List <moduleDLCRecord>();
                foreach (spiderModuleBase module in modSpider.modules)
                {
                    moduleDLCRecord modRecord = GetNew(module.name);
                    modRecord.start(module, wRecord);

                    modRecords.Add(module.GetType().Name, modRecord);

                    //dlc.Add(modRecord);
                }

                //foreach (var md in dlc)
            }
        }