У меня есть элемент div, который имеет несколько таблиц в качестве дочерних элементов. Проблема в том, что мне нужно прокрутить, чтобы добраться до некоторых таблиц, поэтому, если я использую webElement.getElements(By.xpath("//table[@id='data']"))
, я получаю только первые два элемента (все элементы таблицы имеют одинаковый идентификатор).Selenium WebDriver получает дочерние элементы таблицы типов Div
Мне нужен способ получить их все или как-то прокрутить div и просто сохранить элементы чтения. Моя версия selenium - 2.37.1 Я использую его с Internet Explorer 8. Я не могу предоставить код.
<div id="statistics" style="overflow-y: auto; overflow-x:hidden;">
<table id="header" width="50%" cellspacing="0" cellpadding="0" style="margin:0;"> </table>
<table id="data" width="50%" cellspacing="1" cellpadding="0" style="font-size: 12px;border:1px solid #5c9ccc;"></table>
<div id="separator"></div>
<table id="header" width="50%" cellspacing="0" cellpadding="0" style="margin:0;"></table>
<table id="data" width="50%" cellspacing="1" cellpadding="0" style="font-size: 12px;border:1px solid #5c9ccc;"></table>
<div id="separator"></div>
<table id="header" width="50%" cellspacing="0" cellpadding="0" style="margin:0;"></table>
<table id="data" width="50%" cellspacing="1" cellpadding="0" style="font-size: 12px;border:1px solid #5c9ccc;"></table>
<div id="separator"></div>
Хорошо, поэтому мне удалось получить разрешение на публикацию части html. Thats div, который имеет много таблиц в качестве детей. Из этих детей мне нужно прочитать всю таблицу с id = "data"
Это звучит недействительным HTML, который является фундаментальной проблемой для начала. [Спецификация HTML4] (http://www.w3.org/TR/html4/struct/global.html#adef-id) ** и ** [спецификация HTML5] (http://www.w3.org/ TR/html5/elements.html # the-id-attribute) ** четко ** примечание ID * обязательно должно быть уникальным. Запустите HTML через валидатор, и он будет терпеть неудачу. С точки зрения конкретной проблемы, которую вы описали, три вещи: другие в IFrames? Являются ли другие видимыми и присутствуют в зависимости от каких-либо действий, предпринятых на веб-странице? Наконец, проблема исчезает в других браузерах? – Arran
Элемент div, который имеет таблицы внутри, имеет довольно много таблиц. Если я хочу увидеть их всех, мне нужно прокрутить вниз. Я думаю, что мое лучшее решение - это способ прокрутить вниз в div. Я вижу только два элемента, потому что только они помещаются на странице – diazazar
Забыв упомянуть, вы правы: веб-страница очень плохо сделана, но она не сделана мной, поэтому я не могу ее изменить. «Другие видны и присутствуют в зависимости от каких-либо действий, предпринятых на веб-странице?» Это помогло мне найти решение. Спасибо – diazazar