Index: java/org/chromium/distiller/extractors/embeds/ImageExtractor.java |
diff --git a/java/org/chromium/distiller/extractors/embeds/ImageExtractor.java b/java/org/chromium/distiller/extractors/embeds/ImageExtractor.java |
index b1d6e5b5a08a2f3868c7210a5a8365e8542c4101..a615b730804d9916d42f445e21c1d2b07155b866 100644 |
--- a/java/org/chromium/distiller/extractors/embeds/ImageExtractor.java |
+++ b/java/org/chromium/distiller/extractors/embeds/ImageExtractor.java |
@@ -9,6 +9,7 @@ import com.google.gwt.dom.client.Element; |
import com.google.gwt.dom.client.ImageElement; |
import com.google.gwt.dom.client.NodeList; |
import org.chromium.distiller.DomUtil; |
+import org.chromium.distiller.JavaScript; |
import org.chromium.distiller.LogUtil; |
import org.chromium.distiller.webdocument.WebFigure; |
import org.chromium.distiller.webdocument.WebImage; |
@@ -31,6 +32,7 @@ public class ImageExtractor implements EmbedExtractor { |
relevantTags.add("IMG"); |
relevantTags.add("PICTURE"); |
relevantTags.add("FIGURE"); |
+ relevantTags.add("SPAN"); |
} |
private static final String[] LAZY_IMAGE_ATTRIBUTES = |
@@ -75,6 +77,19 @@ public class ImageExtractor implements EmbedExtractor { |
return new WebFigure(img, width, height, imgSrc, figcaption); |
} |
+ if ("SPAN".equals(e.getTagName())) { |
+ if (!e.getAttribute("class").contains("lazy-image-placeholder")) { |
+ return null; |
+ } |
+ // Image lazy loading on Wikipedia. |
+ ie = Document.get().createImageElement(); |
+ imgSrc = e.getAttribute("data-src"); |
+ width = JavaScript.parseInt(e.getAttribute("data-width")); |
+ height = JavaScript.parseInt(e.getAttribute("data-height")); |
+ ie.setAttribute("srcset", e.getAttribute("data-srcset")); |
+ return new WebImage(ie, width, height, imgSrc); |
+ } |
+ |
extractImageAttributes(ie); |
return new WebImage(e, width, height, imgSrc); |
} |