come ottenere <li>contenuto utilizzando BeatufilSoup in Python</li>

come ottenere

  • contenuto utilizzando BeatufilSoup in Python
  • ho bisogno di ottenere ogni contenuto da li tag all’interno di una classe div da un file HTML con BeatifulSoup.

    ecco un esempio di quali valori devo prendere dal file HTML:

    <div class="renderedOptions dropdown-menu">
       <div>
          <ul class="text-option-list">
             <li>40</li>
             <li>41</li>
             <li>42</li>
             <li>42 ½</li>
             <li>43</li>
             <li>44</li>
             <li>45</li>
          </ul>
       </div>

    ovviamente ci sono un sacco di li tag nel file HTML quindi sto cercando di ottenere contenuti di li tag solo da quella classe di div specificato. stavo pensando a qualcosa di simile, ma non ha funzionato.

    from bs4 import BeautifulSoup as bs
    xml = bs(product.text, features='lxml')
    size = xml.find_all('div', {'class': 'renderedOptions'})

    viene stampato solo [].

    che cosa sembra essere errato?

    EN From: How to get

  • content using BeatufilSoup in Python

    More similar articles:

  • 5 Comments

    1. lxml potrebbe non funzionare bene se il documento non è ben formattato, suggerisco di utilizzare html.parser per la maggior parte degli usi:

      from bs4 import BeautifulSoup

      data = """
      <html>
      <div class="renderedOptions dropdown-menu">
      <div>
      <ul class="text-option-list">
      <li>40</li>
      <li>41</li>
      <li>42</li>
      <li>42 ½</li>
      <li>43</li>
      <li>44</li>
      <li>45</li>
      </ul>
      </div>
      </div>
      </html>
      """

      soup = BeautifulSoup(data, 'html.parser')
      find = soup.findAll('div', {"class": "renderedOptions dropdown-menu"})
      for i in find:
      print(i)

      questo dovrebbe stampare l’output desiderato

    Leave a Reply

    Your email address will not be published. Required fields are marked *