HtmlUnit получает изображения src, созданные с помощью js - PullRequest
0 голосов
/ 30 сентября 2018

Я пытаюсь извлечь некоторые изображения, созданные с помощью js, но я не уверен, как это сделать с помощью html-единицы: (

enter image description here

Источник страницы выглядит так:

<a id="item_1574320" href="https://carzz.ro/dacia-logan-14-mpipreferancefab-2006originala-anunt_1574320.html" class="main_items item_cart ">

    <div class="placeholder">
                <div class="overflow_image">
                            <div id="ad_img_loader_1574320" class="ad_img_loader">
                    <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="50px" height="50px" viewBox="0 0 50 50" style="enable-background:new 0 0 50 50;" xml:space="preserve">
                        <path fill="#d32f2f" d="M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z">
                            <animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.6s" repeatCount="indefinite"/>
                        </path>
                    </svg>
                </div>
                    </div>

Я пробовал что-то вроде этого:

String img = pageHtml.getByXPath("//div[starts-with(@id,'item_')] / div[@class='placeholder'] / div[@class='overflow_image'] / img").toString();

1 Ответ

0 голосов
/ 01 октября 2018

Зачем использовать HTML-модуль, если вы можете попробовать мой новый пакет HTML Scrape?

Сюда входит документация и файл JAR, а также производится очистка данных с веб-сайтов для: переводов иностранных новостей, финансовых данных, местных новостейизображения и другие подобные Google усилия легко.(Я только что закончил на этой неделе, через год).

http://developer.torello.directory/JavaHTML/index.html

import Torello.HTML.*;
import java.util.*;
import java.io.*;

public class GetImage
{
    public static void main(String[] argv) throws IOException
    {
        Vector<HTMLNode> page = HTMLPage.getPageTokens(new java.net.URL("My URL.html"), false);
        int pos = InnerTagFind.first(page, "div", "class", tagValue -> tagValue.equals("overflow-image"));
        TagNode tn = TagNodeGet.first(page, pos, -1, TC.OpeningTags, "img");
        String href = Tags.getInnerTagValue(tn, Tags.IMG_SRC);
        System.out.println("The Image URL is: " + href);
    }
}
...