Ich kratze eine E-Commerce-Website mit dem Python-Requests-Modul. Nun, ich habe ein Problem beim Extrahieren des Textes zwischen mehreren Knoten. Das folgende HTML ist der Teil, in dem ich versuche, den Text zu extrahieren. Ich muss den gesamten Text unter den (div class = "rte ingredients") extrahieren, der in die zwei (p) -Tags und alle (starken) Tags eingebettet ist. Passt auf! Die (starken) Tags können von Seite zu Seite variieren.Xpath den gesamten Text zwischen mehreren Knoten extrahieren?
<div class="rte ingredients">
<p>Farina sbiancata arricchita (farina sbiancata di
<strong>grano</strong>,
ferro ridotto, vitamine B3-B1-B2-B9), zucchero,
agenti lievitanti E500ii-E541i-E341i, destrosio,
<strong>latte</strong>
scremato disidratato, olio di
<strong>soia</strong> parzialmente
idrogenato, sale,
<strong>glutine</strong> di <strong>grano</strong>,
colorante E170, estratto secco di sciroppo di granoturco, caseinati di
sodio (<strong>latte</strong>), emulsionante E471, regolatore di acidità
E270. Può contenere tracce di <strong>uova</strong>. Contiene OGM.</p>
<p>Valori nutrizionali (per 100g): energia 348Kcal, lipidi 3.3g (di cui
grassi saturi 0g), carboidrati 69.6g (di cui zuccheri 13g), proteine
10.9g, sale 2.6g.</p>
</div>
Nun, ich verwende den folgenden Code, aber das Ergebnis ist teilweise.
ingredients = parser.xpath('//*[@id="bottom_right_product_infos"]/section[2]/div/p[1]/text()')
print ingredients
['Farina sbiancata arricchita (farina sbiancata di']
Umgekehrt muss ich den gesamten Text unter dem (DIV) Tag extrahieren.
Kann mir jemand dabei helfen? Vielen Dank!
Es tut mir leid ich einen Teil des Codes hinzufügen vergessen: response = requests.get (url) .text Parser = html.fromstring (Antwort) – CosimoCD
Mögliche Duplikat [force XPath eine Zeichenfolge lxml zurückzukehren] (https://stackoverflow.com/questions/34461840/force-xpath-to-return-a-string-lxml) –