Доступ к вложенному элементу с помощью beautifulsoupHtml

Программисты Html
Ответить
Anonymous
 Доступ к вложенному элементу с помощью beautifulsoup

Сообщение Anonymous »

Я хочу найти все элементы li, вложенные в
  • . Я попробовал следующие решения, и все они вернули 0 сообщений:
    messages = soup.find_all("ol")
    messages = soup.find_all('div', class_='messageContent')
    messages = soup.find_all("li")
    messages = soup.select('ol > li')
    messages = soup.select('.messageList > li')

    Полный HTML-код можно увидеть здесь, в этом списке.
  • Просто интересно, как правильно получить эти элементы списка.
  • В красивом супе вам нужно знать вложенный путь, чтобы получить нужный элемент. Или что-то вроде Soup.find_all("li") должно возвращать все элементы, независимо от того, вложенные они или нет?
Рад и за ответы, отличные от bs4.
Обновить
Вот как я получил код.
from bs4 import BeautifulSoup

# Load the HTML content
with open('/tmp/property.html', 'r', encoding='utf-8') as file:
html_content = file.read()

# Create a BeautifulSoup object and specify the parser
soup = BeautifulSoup(html_content, 'html.parser')

Файл находится в основной ссылке выше.
Обновление 2
Я заработал, используя библиотеку запросов. Похоже, загрузка файла вручную могла привести к поломке некоторых HTML-кодов?
import requests
from bs4 import BeautifulSoup

url = "https://www.propertychat.com.au/communi ... 024.75213/"
response = requests.get(url)

soup = BeautifulSoup(response.text, "html.parser")
messages = soup.select('.messageList > li')


Подробнее здесь: https://stackoverflow.com/questions/777 ... utifulsoup
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Html»