в вашем вопросе.

ел объект с определенным классом:

THREAD = TREE.find_class('thread')[0]

Теперь я хочу получить все<p> элементы, которые являются его прямыми детьми.

Я устал:

THREAD.findall("p")

THREAD.xpath("//div[@class='thread']/p")

Но все это возвращает все<p> элементы внутри этого<div>независимо от того, что это<div> их ближайший родитель или нет.

Как я могу заставить это работать?

Редактировать:

Пример HTML

<div class='thread'>
   <p> <!-- 1 -->
      <!-- Can be some others <p> objects inside, which should not be counted -->
   </p> 
   <p><!-- 2 --></p>
</div>
<div class='thread'>
   <p>[...]</p>
   <p>[...]</p>
</div>

скрипт должен найти два объекта<p>, которые являются детьмиTHREAD, Я должен получить список из двух объектов, помеченных как «1» и «2» в комментариях в примере HTML.

Изменить 2:

Еще одно уточнение, поскольку люди запутываются:

THREAD некоторый объект, хранящийся в переменной, может быть любым элементом html. хочу найти<p> объекты, которые являются прямыми детьмиTHREAD, Те<p>не может быть снаружиTHREAD или внутри любого элемента, который также внутриTHREAD.

Ответы на вопрос(2)

Ваш ответ на вопрос