Ich arbeite an einem Projekt für meinen IT-Job, bei dem ich einen Scraper mit Scrapy/XPath schreiben muss, um einen relativ einfachen Datensatz von einer ziemlich einfachen HTML-Seite zu erhalten. Ich habe alles so funktionieren lassen, wie ich es möchte, mit Ausnahme von einigen kursiven Texten (die Website, die für ein Sprachausbildungsprogramm gekratzt wird und es gibt viele kursiv gedruckte Stellen in diesem speziellen Textfeld), die nicht angezeigt werden.Wie formatierter Text in XPath?
Unten finden Sie den Code I erfolgreich verwendet haben, bevor die kursiv gedruckten Ausgabe kam:
rawTitles = []
for sel in response.xpath('//h2[@class="video"]'):
rawTitle = sel.xpath('text()').extract()
rawTitles.append(rawTitle[0])
print rawTitles
ich die folgende Rückkehr für "print rawTitles" erhalten:
[u'\n', u'\nVariations in Making ', u'\nMaking ', u'\nCommon Rice and Meat Dishes', u'\nRumens and ']
Was ich will, ist so etwas wie dies:
[u'\n<i>Mjadra</i>', u'\nVariations in Making <i>Mansaf</i>', u'\nMaking <i>Maqloobeh</i>', u'\nCommon Rice and Meat Dishes', u'\nRumens and <i>Mahashi</i>']
Wenn die wörtliche HTML-Tags können nicht in die Ausgabe aufgenommen werden, würde ich bei l Ost wie der Klartext, der enthalten sein soll. Leere Räume, in denen Wörter einfach sein sollten, scheinen nicht das Beste zu sein, was ich tun kann.
Weiß jemand, was ich versuchen möchte? Lassen Sie es mich wissen, wenn ich nicht genügend Informationen zur Verfügung stelle. Danke im Voraus.
EDIT: Hier ist ein Beispiel für einen Tabelleneintrag, von dem ich brauche zu extrahieren Info:
<td width="25%" valign="top" align="center">
<h2 class="video"><img src="content/pl_makingfood_mjadrah.jpg" alt="Thumbnail image from video" width="160" height="120" /><br /><br />
<i>Mjadra</i></h2> <p class="video">Video <br />
<a href="content/pl_makingfood_mjadrah.rm" class="main">real</a>
<a href="content/pl_makingfood_mjadrah.mp4" class="main" target="_blank">mp4</a><br /><br />
Palestinian Arabic & English <br />
<a href="content/pl_makingfood_mjadrah.doc" target="_blank" class="main"> doc </a>
<a href="content/pl_makingfood_mjadrah.pdf" target="_blank" class="main"> pdf </a></p>
</td>
Können Sie Beispiel-HTML-Eingabe bereitstellen? –
Ich habe gerade einige hinzugefügt; lass es mich wieder wissen, wenn es nicht viel hilft. – jah