Je veux seulement le texte du texte du texte des deux listes. J'ai ajouté un * à côté de ceux.
<h3 class="icon fa-comment">Colorado Locations</h3> <section class="lists" id="locate"> <div class="border" id="ranch"> <p *class="lists" id="stores">Colorado Ranch Market</p> <p class="lists" id="stores">11505 E. Colfax Ave</p> <p class="lists" id="stores">Aurora, CO 80010</p> <p class="lists" id="stores">PH: 720-343-2195</p> <p class="lists" id="stores">FAX: 720-343-2196</p> </div> <div class="border"> <p *class="lists" id="stores">Save-A-Lot</p> <p class="lists" id="stores">4255 W Florida Ave</p> <p class="lists" id="stores">Denver, CO 80219</p> <p class="lists" id="stores">PH: 303-935-0880</p> <p class="lists" id="stores">FAX: 303-935-4002</p> </div> a = soup.find_all('div', {'class': 'border'})[0]
3 Réponses :
qui peut être fait avec un sélecteur CSS: Il renvoie une liste avec les premiers éléments P de div avec bordure de classe. P> P>
Une autre version, en utilisant impression: p> : NTH-de type () code> Sélecteur:
peut aussi bien avoir la suite d'exemples CSS quelque chose que vous ne voudriez pas faire (en particulier à l'exemple de HTML donné): P> items = [item.text for item in soup.select('#locate p:nth-child(3n+1):nth-child(odd)')]