public EntitySpider AddEntityType(Type type, TargetUrlExtractor targetUrlExtractor) { AddEntityType(type, new List <TargetUrlExtractor> { targetUrlExtractor }, null); return(this); }
public EntitySpider AddEntityType(Type type, TargetUrlExtractor targetUrlExtractor, DataHandler dataHandler) { if (targetUrlExtractor != null) { AddEntityType(type, new List <TargetUrlExtractor> { targetUrlExtractor }, dataHandler); } else { AddEntityType(type, new List <TargetUrlExtractor>(), dataHandler); } return(this); }
private List <TargetUrlExtractor> GetTargetUrlExtractInfos(List <JObject> targetUrlExtractInfos) { List <TargetUrlExtractor> list = new List <TargetUrlExtractor>(); foreach (var obj in targetUrlExtractInfos) { TargetUrlExtractor t = new TargetUrlExtractor(); t.Patterns = obj.SelectTokens("$.Patterns[*]").Select(p => p.ToString()).ToList(); t.Region = obj.SelectToken("$.Region").ToObject <Selector>(); foreach (var format in obj.SelectTokens("$.Formatters[*]")) { var name = format.SelectToken("$.Name").ToString(); var formatterType = FormatterFactory.GetFormatterType(name); t.Formatters.Add((Formatter)format.ToObject(formatterType)); } list.Add(t); } return(list); }