2014-10-25 11 views
5

Ich habe eine Reihe von <p> Elemente in einem Dokument Ich kratze mit Scrapy.
das sind einige: <p><span>bla bla bla</span></p> oder <p><span><span>bla bla bla</span><span>second bla bla</span></span></p>scrapy Holen Sie sich den gesamten Text einschließlich Kinder

Ich möchte den ganzen Text mit den Kindern extrahieren (nehmen Ich habe bereits die Wähler des <p)
(zweites Beispiel: eine Zeichenfolge haben bla bla bla second bla bla)

+0

können Sie Code anzeigen, wie Sie die Daten aus dem Antworttext extrahieren? – Anzel

+0

[Beautifulsoup] (http://www.crummy.com/software/BeautifulSoup/bs4/doc/) ist eine großartige Bibliothek zum scraping. Sie können es mit 'scrapy' verwenden. –

Antwort

6

Sie können nur //text() verwenden alle Texte von Kindern

Knoten

zum Beispiel zu extrahieren:

.//p//text() 
+0

ahhh ... // text() statt/text() - was ein 1 character kann :) – Boaz

+0

froh, dass es hilft. Mit yes '//' werden alle Elemente rekursiv nach dem übergeordneten 'node', in Ihrem Fall '// p', abgerufen – Anzel

Verwandte Themen