Mein erstes hier auf SO. Danke, dass du uns so lange geholfen hast. Kommen gerade zu Punkt:beautifulsoup CSS Select - finde ein Tag, in dem ein bestimmtes Attribut (Stil für ex) nicht vorhanden ist
Szenario: ich auf einem bestehenden Programm arbeite, die den CSS-Selektor als String aus einer Konfigurationsdatei liest das Programm dynamisch und in der Lage zu machen, jede Website verschrotten nur durch eine Änderung der Konfiguration Wert des CSS-Selektors.
Problem: Ich versuche, eine Website zu kratzen, welche Elemente als eine der zwei Optionen unten rendert:
Option1:
.........
<div class="price">
<span class="price" style="color:red;margin-right:0.1in">
<del>$299</del>
</span>
<span class="price">
$195
</span>
</div>
soup = soup.select("span.price") - this doesn't work as I need second span tag or last span tag :(
Option2:
.........
<div class="price">
<span class="price">
$199
</span>
</div>
soup = soup.select("span.price") - this works great!
Frage: In den beiden oben genannten Op Ich möchte in der Lage sein, das letzte Span-Tag ($ 195 oder $ 199) zu bekommen und kümmern sich nicht um die $ 299. Im Grunde möchte ich nur den endgültigen Verkaufspreis und nicht den ursprünglichen Preis extrahieren.
So sind die zwei Möglichkeiten, wie ich schon jetzt wissen, sind:
1) erhalten Sie immer die letzte Span-Tag 2) immer die span-Tag bekommen, die nicht style-Attribut
Nun hat, ich weiß, die nicht bediener, last-of-type sind nicht vorhanden in bs4 (nur nth-of-type ist verfügbar) so bin ich hier fest. Irgendwelche Vorschläge sind hilfreich.
Bearbeiten: - Da dies ein bestehendes Programm ist, kann ich supp.find_all() oder eine andere Methode außer supp.select() verwenden. Leider :(
Dank
Ich verstehe nicht, was Sie genau tun müssen, aber Sie können keine Anzeige für del {{{umspannen del {display verwenden: none;) –
In diesem Buch steht "last-of-type": https://books.google.nl/books?id=mEu7DQAAQBAJ&pg=PA6&lpg=PA6&dq=bootstrap+4+last-of-type&source=bl&ots=zUmAMxCMG-&sig=kCjR8TivvajvtMlf -gOE5lABA2w & hl = de & sa = X & ve = 0ahUKEwjUuMrdlJLUAHWOY1AKHQT1AvIQ6AEIVTAH # v = Seite & q = Bootstrap% 204% 20Last-of-Type & f = falsch – Gerard
Können Sie URL teilen? Ansonsten versuche supp.select ("span.Preis ", {'style': None}) – Gahan