[PYTHON] XPath-Grundlagen (3) -Funktionen, die häufig für XPath verwendet werden

Beim letzten Mal habe ich die am häufigsten verwendete [XPath-Schreibmethode] eingeführt (https://qiita.com/Octoparse_Japan/items/2f46848803d68affd271). Dieses Mal habe ich die Funktionen eingeführt, die XPath häufig verwendet, um Daten korrekter anzugeben. Ich werde.

1. enthält (): Geben Sie das Element an, das eine bestimmte Zeichenfolge enthält

enthält () wird normalerweise für die Fuzzy-Suche nach Attributwerten oder Zeichenfolgen im Text verwendet.

2.jpg

Wenn Sie beispielsweise alles, was Rot im Klassenattribut enthält, aus diesem HTML-Code abrufen möchten, schreiben Sie wie folgt.

//span[contains(@class,“Red”)]

Mit anderen Worten bedeutet dieser XPath, ein span-Element ** zu erhalten, das Rot in der ** Klasse enthält.

3.jpg

Wenn Sie beispielsweise ein Element angeben möchten, das die Zeichen "Rowling" aus diesem HTML-Code enthält, schreiben Sie wie folgt.

//span[contains(text(),"Rowling")]

** Tipps! ** ** ** Bei der Angabe der Seitenvorschubschaltfläche wird häufig ** "enthält (text ()," next ")" ** verwendet. Klicken Sie hier, um zu erfahren, wie Sie einen XPath schreiben, der eine Schaltfläche zum Weiterleiten von Seiten angibt. ➡ So schreiben Sie einen XPath, der eine Schaltfläche zum Weiterleiten von Seiten angibt

2. position (): Geben Sie das Element an einer bestimmten Position an

Im vorherigen Artikel habe ich vorgestellt, dass Sie die Ordnungselemente erhalten können, indem Sie eine Zahl in [](eckige Klammer) einfügen. Sie können auch das N-te Element in Position angeben.

Im obigen HTML-Code ist beispielsweise "Produkt 3" das 4. Element. Schreiben Sie es also wie folgt.

//tbody/th[4]

Schreiben Sie mit position () = wie folgt.

//tbody/th[position()=4]

4 (1).jpg

Wenn Sie ein anderes Element als "Werbung" erhalten, schreiben Sie wie folgt, da "Werbung" das erste Element ist.

//tbody/th[position()>1] 5 (1).jpg

3. und / nicht / oder: Geben Sie ein Element an, das mehrere Bedingungen enthält

Wenn Sie ein Element angeben möchten, das mehrere Bedingungen gleichzeitig enthält, verwenden Sie die Funktion und / not / oder.

Wenn Sie die href einschließlich "S_20" und "pdf" aus diesem HTML erhalten möchten, schreiben Sie wie folgt.

//a[contains(@href,“S_20”) and contains(@href,“pdf”)]

Wenn Sie aus diesem HTML-Code ein anderes [@href] als https://helpcenter.octoparse.jp/hc/ja/xpath/S_10.html erhalten möchten, schreiben Sie wie folgt.

//a[not(contains(@href, "S_10"))]

Wenn Sie die href mit M oder L aus diesem HTML-Code erhalten möchten, schreiben Sie wie folgt.

//a[contains(@href,”M_”) or contains(@href,”L_”)]

Wenn Sie eine andere href als M oder L erhalten möchten, kombinieren Sie nicht und oder und schreiben Sie wie folgt.

//a[not(contains(@href,”M_”) or contains(@href,”L_”))]

Die oben genannten Funktionen werden häufig für XPath verwendet. Weitere Informationen zur XPath-Syntax / -Funktionen finden Sie in diesem Artikel.

Originalartikel: https://helpcenter.octoparse.jp/hc/ja/articles/360012713639

Recommended Posts

XPath-Grundlagen (3) -Funktionen, die häufig für XPath verwendet werden
Astro: Häufig verwendete Python-Module / -Funktionen zur Analyse
Installationszusammenfassung, die häufig für AI-Projekte verwendet wird
# Python-Grundlagen (Funktionen)
Python-Grundlagen: Funktionen
Funktionen, die in der for-Anweisung verwendet werden können
# 4 [Python] Grundlagen der Funktionen
XPath-Grundlagen (2) - So schreiben Sie XPath
Werkzeuge zum Kopieren
Einstellungen, die häufig in Jupyter verwendet werden
Seaborn Basics für Anfänger ④ Pairplot
XPath-Grundlagen (1) - Grundkonzept von XPath
Schlüsselwortargumente für Python-Funktionen
Python #Funktion 1 für Super-Anfänger