Я обнаружил еще один вопрос о стеке потока, в котором говорится о том, как выделять текст с помощью JavaScript.
Можете ли вы установить и / или изменить выбор текста пользователя в JavaScript?
Мне удалось изменить его скрипт, чтобы он мог работать в вызове getEval из Selenium.IDE (если вы используете Selenium по-другому, возможно, вам придется изменить его).Я также удалил код, не относящийся к Firefox:
function selectElementContents(el,start,end) {
var sel = window.getSelection();
var range = window.document.createRange();
range.setStart(el,start);
range.setEnd(el,end);
sel.removeAllRanges();
sel.addRange(range);
}
selectElementContents(window.document.getElementById("container").firstChild,10,20)
Это позволяет вам выбирать диапазон текста в пределах одного элемента.«Контейнер» - это идентификатор элемента, содержащего текст, а 10 и 20 - это индексы символов, с которых нужно начинать и останавливаться.
Просто сожмите это до одной строки, добавьте в оператор Selenium getEvalи он должен выбрать текст для вас.
Если текст в пределах одного элемента недостаточно гибок для вас, документация по диапазонам JavaScript должна предоставить вам дополнительные детали, которые вам нужны.