All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.xbynet.crawler.parser.XpathParser Maven / Gradle / Ivy

The newest version!
package com.github.xbynet.crawler.parser;

import java.util.List;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;

import us.codecraft.xsoup.XPathEvaluator;
import us.codecraft.xsoup.Xsoup;

public class XpathParser implements Parser{
	
	private Document doc;

    public XpathParser(String raw) {
        this.doc=Jsoup.parse(raw);
    }

    public String single(String xpathStr) {
    	XPathEvaluator xPathEvaluator = Xsoup.compile(xpathStr);
        return xPathEvaluator.evaluate(doc).get();
    }

    public List list(String xpathStr) {
    	XPathEvaluator xPathEvaluator = Xsoup.compile(xpathStr);
        return xPathEvaluator.evaluate(doc).list();
    }

    public Element element(String xpathStr) {
        List elements = elements(xpathStr);
        if (elements!=null && elements.size()>0){
            return elements.get(0);
        }
        return null;
    }

    public List elements(String xpathStr) {
    	XPathEvaluator xPathEvaluator = Xsoup.compile(xpathStr);
        return xPathEvaluator.evaluate(doc).getElements();
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy