Xpath analysiert die ganze Seite, wenn ich mich nicht an

Ich analysiere Webseiten mit python und XPath.

Was ich versuche zu tun ist, um die href aus dem <a> zu extrahieren

Also hier ist wie ist das XML (Seite):

 <div id="post"> <div align="center"> <table> <tbody> <tr> <td> <td> <a href="test01"> <tr> <td> <tr> <td> <div align="center"> <table> <tbody> <tr> <td> <td> <a href="test01"> <tr> <td> <tr> <td> 

Und hier ist der Code, den ich gemacht habe:

 posts = page.xpath("//div[@id='posts']/div[@align='center']") for post in posts : print post.xpath("//table/tr[1]/td[2]/a/@href") 

Aber das Problem ist, dass ich am Ende mit jedem href von posts und nicht die Single aus post

Was mache ich falsch ?

One Solution collect form web for “Xpath analysiert die ganze Seite, wenn ich mich nicht an”

Ein XPath, der mit einem / Zeichen beginnt, bedeutet, dass es am Dokumentwurzelknoten beginnen wird. Um einen relativen XPath aus dem Kontextknoten zu erstellen, musst du einen . Vor dem /

So sollte Ihr Code sein:

 posts = page.xpath("//div[@id='posts']/div[@align='center']") for post in posts: print post.xpath(".//table/tr[1]/td[2]/a/@href") 
  • Wenn Attribut vorhanden ist, drucken Sie Kinder Beschreibung
  • Python Crawler nicht finden spezifische Xpath
  • Leere Liste mit scrapy und Xpath
  • Schreibe xml aus der Liste der Pfade / Werte
  • Benötige xpath-Locators für sichtbare Elemente
  • Wie man einem einfachen Zitat in xpath 1.0 in Selen für Python entgehen kann
  • Welche reine Python-Bibliothek soll ich verwenden, um eine Website zu kratzen?
  • Parse xml mit lxml - Extrakt Element Wert
  • Entfernen von Leerzeichen und nicht bedruckbarem Zeichen in Python
  • Cant Scrape Webseite mit Python Requests Library
  • Lxml xpath kann keine HTML-Elemente anzeigen
  • Python ist die beste Programmiersprache der Welt.