Какой использовать селектор, чтобы получить описание из трех указанных ссылок?
Я хочу собрать статистику с сайта с вакансиями. Мне нужно получить описание вакансии.
var cell = document.getElementsByClassName("vacancy-section");
console.log(cell[0].textContent);
Такой код работает на Первая ссылка , но захватывает в том числе код на Вторая ссылка или Третья ссылка
Можете сказать, каким образом составить селектор, чтобы он мог взять текст сразу для трех ссылок?
Ответы (1 шт):
На экране в элементе вы видите только текст и медиа, но в коде может быть что угодно.
.textContentвернёт вам текст элемента и всех дочерних элементов, будь то<script>,<style>и т.п..innerTextвернёт текст того, что отображается на экране.- Ну и стоит сказать о
.innerHTML, который вернёт HTML код
var text = document.querySelector('.text');
console.log('--- textContent ---');
console.log(text.textContent);
console.log('--- innerText ---');
console.log(text.innerText);
console.log('--- innerHTML ---');
console.log(text.innerHTML);
<p class="text">
Какой-то текст
<br>
<b styte="color: red;">Какой-то текст</b>
<style>.text {background: linear-gradient(-135deg, transparent, #ccc)}</style>
</p>
Отличие .textContent от .innerText и от .innerHTML
В вашем случае, думаю, подойдёт .innerText, он вернёт только текст описания вакансии, без картинок и стилизации (жирный шрифт, выделения текста, маркированный список и т.п.).
Либо используйте .innerHTML, предварительно удалив лишнее (<script>, <style>, например).