Как получить текст раздела на странице HTML

#html #url

#HTML #url

Вопрос:

У меня есть веб-страница с этим разделом:

 <section class="post__content">
At vero eos et accusamus et iusto odio dignissimos ducimus qui
blanditiis praesentium voluptatum deleniti atque corrupti quos
dolores et quas molestias excepturi sint occaecati cupiditate
non provident.                           
</section>
 

Мне нужно получить текст из этого раздела.
Я пытался:
https://www.example.com/quote-of-the-day?d=01/09/2021/#post__content

Комментарии:

1. «Я пытался» — как пытался? Вам нужно будет захватить это на сервере, если ваш скрипт не из того же источника

Ответ №1:

ЕСЛИ текст находится на той же странице, что и сценарий

 console.log(document.querySelector("section.post__content").textContent
  .replace(/(rn|n|r)/gm,"") // get rid of trailing newlines, remove if you need them
) 
 <section class="post__content">
At vero eos et accusamus et iusto odio dignissimos ducimus qui
blanditiis praesentium voluptatum deleniti atque corrupti quos
dolores et quas molestias excepturi sint occaecati cupiditate
non provident.                           
</section> 

ЕСЛИ текст находится на ДРУГОЙ странице, которая находится на том же сервере, на котором вы хотите его получить, вы можете использовать jQuery или fetch . Здесь jQuery может проанализировать страницу и просто захватить раздел

 $.get("/quote-of-the-day?d=01/09/2021/ section.post__content",function(data) { console.log(data) })
 

Пожалуйста, обратите внимание, что класс .post__content и идентификатор #post__content

Если НЕТ, то вам нужен какой-то серверный процесс

Комментарии:

1. Так сложно. Почему он должен замедлять работу своего веб-сайта с помощью jQuery, если он хочет просто получить текст?

2. @RamoFX Пожалуйста, ознакомьтесь с соответствующим обновлением. Я предположил, что текст НЕ был на той же странице, что и сценарий

3. О, хорошо, извините за это

4. Спасибо @mplungjan. Первый вариант сработал!

Ответ №2:

Попробуйте это:

 const sectionText = document.querySelector("section.post__content").textContent

console.log(sectionText)
 

Вы даже можете создать функцию, которая получает текст элемента:

 const getElementText = selector => {
  return document.querySelector(selector).textContent
}

const sectionText = getElementText("section.post__content")

console.log(sectionText)
 

ПРИМЕЧАНИЕ: Если у вас есть больше section тегов с post__content классом, то вам следует использовать document.querySelectorAll() , которые возвращают массив всех узлов.

Комментарии:

1. Это предполагает, что я на той же странице, что и скрипт!