public static CssSelector $(String expr) { return new CssSelector(expr); }
private String getValue(Element element) { if (attrName == null) { return element.outerHtml(); } else if ("innerHtml".equalsIgnoreCase(attrName)) { return element.html(); } else if ("text".equalsIgnoreCase(attrName)) { return getText(element); } else if ("allText".equalsIgnoreCase(attrName)) { return element.text(); } else { return element.attr(attrName); } }
@Override public String select(Element element) { List<Element> elements = selectElements(element); if (CollectionUtils.isEmpty(elements)) { return null; } return getValue(elements.get(0)); }
public static CssSelector $(String expr, String attrName) { return new CssSelector(expr, attrName); }
@Override public List<String> selectList(Element doc) { List<String> strings = new ArrayList<String>(); List<Element> elements = selectElements(doc); if (CollectionUtils.isNotEmpty(elements)) { for (Element element : elements) { String value = getValue(element); if (value != null) { strings.add(value); } } } return strings; }
private String getValue(Element element) { if (attrName == null) { return element.outerHtml(); } else if ("innerHtml".equalsIgnoreCase(attrName)) { return element.html(); } else if ("text".equalsIgnoreCase(attrName)) { return getText(element); } else if ("allText".equalsIgnoreCase(attrName)) { return element.text(); } else { return element.attr(attrName); } }
public static Selector getSelector(ExtractBy extractBy) { String value = extractBy.value(); Selector selector; switch (extractBy.type()) { case Css: selector = new CssSelector(value); break; case Regex: selector = new RegexSelector(value); break; case XPath: selector = new XpathSelector(value); break; case JsonPath: selector = new JsonPathSelector(value); break; default: selector = new XpathSelector(value); } return selector; }
@Override public String select(Element element) { List<Element> elements = selectElements(element); if (CollectionUtils.isEmpty(elements)) { return null; } return getValue(elements.get(0)); }
public static CssSelector $(String expr) { return new CssSelector(expr); }
@Override public List<String> selectList(Element doc) { List<String> strings = new ArrayList<String>(); List<Element> elements = selectElements(doc); if (CollectionUtils.isNotEmpty(elements)) { for (Element element : elements) { String value = getValue(element); if (value != null) { strings.add(value); } } } return strings; }
public static CssSelector $(String expr, String attrName) { return new CssSelector(expr, attrName); }