Parser.java 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package eu.kanade.mangafeed.util;
  2. import android.support.annotation.Nullable;
  3. import org.jsoup.nodes.Element;
  4. import org.jsoup.select.Elements;
  5. public class Parser {
  6. @Nullable
  7. public static Element element(Element container, String pattern) {
  8. return container.select(pattern).first();
  9. }
  10. @Nullable
  11. public static String text(Element container, String pattern) {
  12. return text(container, pattern, null);
  13. }
  14. @Nullable
  15. public static String text(Element container, String pattern, String defValue) {
  16. Element element = container.select(pattern).first();
  17. return element != null ? element.text() : defValue;
  18. }
  19. @Nullable
  20. public static String allText(Element container, String pattern) {
  21. Elements elements = container.select(pattern);
  22. return !elements.isEmpty() ? elements.text() : null;
  23. }
  24. @Nullable
  25. public static String attr(Element container, String pattern, String attr) {
  26. Element element = container.select(pattern).first();
  27. return element != null ? element.attr(attr) : null;
  28. }
  29. @Nullable
  30. public static String href(Element container, String pattern) {
  31. return attr(container, pattern, "href");
  32. }
  33. @Nullable
  34. public static String src(Element container, String pattern) {
  35. return attr(container, pattern, "src");
  36. }
  37. }