Мне нужно найти теги после определенного элемента на веб-сайте. Итак, есть ли способ пропустить объекты тега до этого конкретного, а затем найти подходящие для данного критерия? Мне нужно все p
с классом XYZ
после div
с классом ABC
.
response = requests.get(url).text
soup = BeautifulSoup(response)
items = soup.find_all('p', {'class': 'MessageTextSize js-message-text message-text'}) # only return the ones after the div with class of "Text 2"
Редактировать: Вы можете увидеть пример кода блока ниже, который является частьюresponse
. Цель состоит в том, чтобы найти два последних абзаца (Text 3
& Text 4
), несмотря на то, что у первого (Text 1
) также есть тот же p
class
с ними. Итак, мне нужно искать параметр функции find_all
после Text 2
(класс MessageTextSize js-message-text message-text
).
<div class="js-message-text-container">
<p class="MessageTextSize js-message-text message-text" data-aria-label-part="0">Text 1</p>
</div>
<div class="js-message-text-container">
<p class="MessageTextSize MessageTextSize--jumbo js-message-text message-text" data-aria-label-part="0">Text 2</p>
</div>
<div class="js-message-text-container">
<p class="MessageTextSize js-message-text message-text" data-aria-label-part="0">Text 3</p>
</div>
<div class="js-message-text-container">
<p class="MessageTextSize js-message-text message-text" data-aria-label-part="0">Text 4</p>
</div>
ps bs4
версия - 4.8.1
, которая является последней версией.