Вся заслуга ответа Грега W , так как я основал этот ответ на его коде, но я обнаружил, что для веб-сайта без встроенного стиля или тегов сценария его было, как правило, проще использовать :
var theText = $('body').text();
, так как это захватывает весь текст во всех тегах без необходимости вручную устанавливать каждый тег, который может содержать текст.
Кроме того, если вы не будете осторожны, установка тегов вручную имеет тенденцию создавать дублированный текст в выводе, поскольку каждой функции часто приходится проверять теги, содержащиеся в других тегах, в результате чего один и тот же текст захватывается дважды. Использование одного селектора, который содержит все теги, которые мы хотим извлечь из этой проблемы, обходит эту проблему.
Предостережение заключается в том, что если в теге body присутствуют встроенные теги стиля или скрипта, они тоже будут захватываться.
Обновление:
После прочтения этой статьи о innerText
Теперь я думаю, что лучший способ получить текст - это простой ванильный js:
document.body.innerText
Как таковой, это не надежный кросс-браузер, но в контролируемых средах он дает лучшие результаты. Прочитайте статью для более подробной информации.
Этот метод форматирует текст, как правило, более читабельным образом, а не не включает содержимое тега или стиля скрипта в вывод.