Хромированный драйвер Selenium svg dom захватывает ссылки - PullRequest
0 голосов
/ 25 октября 2018

У меня есть http://app.risorseumane.uniparthenope.it/organigramma/organigramma.htm веб-страница, где мне нужно получить все ссылки с веб-страницы.Например, я хочу ссылку

<a xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="https://www.uniparthenope.it/ateneo/organigramma/rettore" target="_top">
            <g id="shape48-47" transform="translate(355,-400.951)">
                <title>Entità esterna 1.48</title>
                <desc>Rettore</desc>
                <g id="shadow48-48" transform="matrix(1,0,0,1,2.12132,2.12132)" class="st5">
                    <rect x="0" y="531.345" width="136.459" height="63.9306" class="st6"/>
                </g>
                <rect x="0" y="531.345" width="136.459" height="63.9306" class="st7"/>
                <text x="48.7" y="566.91" class="st8">Rettore</text>            </g>
        </a>

, которую я могу видеть только с помощью функции «Проверить элемент» Chrome или путем вызова document.getElementsByTagName('a') в окне инструментов разработчика в Chrome.

К сожалению,я не могу получить эти ссылки, используя driver.findElementsByTagName("a"); или

    JavascriptExecutor js = null;
                        if (driver instanceof JavascriptExecutor) {
                            js = (JavascriptExecutor)driver;
                        }
List<Object> fsLinks = (List<Object>)js.executeScript("return document.getElementsByTagName('a');");

1 Ответ

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

Вы можете попробовать с xpath:

// * [name () = 'a']

или

// * [local-name () = 'a']

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...