2016-08-03 12 views
-1

Bei HTML-Struktur wie folgt:Get Attribut mit XPath

<dd itemprop="actors"> 
    <span itemscope="" itemtype="http://schema.org/Person"> 
     <a itemprop="name">Yumi Kazama</a>,     </span> 

<span itemscope="" itemtype="http://schema.org/Person"> 
    <a itemprop="name">Yuna Mizumoto</a>,    </span> 

<span itemscope="" itemtype="http://schema.org/Person"> 
    <a itemprop="name">Rei Aoki</a>,      </span> 
</dd> 

Wie alle Werte von a/text() bekommen, für das all itemprop="name" Elemente?

url:

//*[@itemprop='actors']//*[@itemprop='name']/text() 

nur erste a/text bekommen.

+0

Gerade unter dem Link OP sucht geschrieben, so scheint es höchst unpassend oder gar missbräuchlich für dieses Forum zu sein. Ich markiere das. Andere, Bedenken, wenn überhaupt. – SomeDude

+0

Ihr xpath funktioniert gut –

Antwort

1

Ihre HTML-Datei Unter der Annahme test.html Folgendes sollten funktionieren:

from lxml import html 

with open(r'E:/backup/GoogleDrive/py/scrapy/test.html', "r") as f: 
    page = f.read() 
tree = html.fromstring(page) 
names = tree.xpath("//a[@itemprop='name']//text()") 
print names