runParser method
Run parser based on type
Implementation
Future<Data?> runParser({
required Parser parser,
required Data parentData,
required Uri? proxyUrl,
required bool debug,
}) async {
switch (parser.type) {
case ParserType.element:
return elementParser(parser, parentData, extractedData, debug);
case ParserType.text:
return textParser(parser, parentData, extractedData, debug);
case ParserType.image:
return imageParser(parser, parentData, extractedData, debug);
case ParserType.attribute:
return attributeParser(parser, parentData, extractedData, debug);
case ParserType.json:
return jsonParser(parser, parentData, extractedData, debug);
case ParserType.url:
return urlParser(parser, parentData, extractedData, debug);
case ParserType.http:
return await httpParser(
parser,
parentData,
extractedData,
proxyUrl,
debug,
);
case ParserType.strBetween:
return stringBetweenParser(parser, parentData, debug);
case ParserType.jsonld:
return jsonLdParser(parser, parentData, debug);
case ParserType.table:
return tableParser(parser, parentData, extractedData, debug);
case ParserType.sibling:
return siblingParser(parser, parentData, extractedData, debug);
case ParserType.urlParam:
return urlParamParser(parser, parentData, extractedData, debug);
case ParserType.jsonTable:
return jsonTableParser(parser, parentData, extractedData, debug);
case ParserType.staticVal:
return staticValueParser(parser, parentData, debug);
case ParserType.json5decode:
return json5DecodeParser(parser, parentData, debug);
case ParserType.returnUrlParser:
return returnUrlParser(parser, parentData, debug);
default:
return null;
}
}