La dernière fois, j'ai présenté la [méthode d'écriture XPath] la plus utilisée (https://qiita.com/Octoparse_Japan/items/2f46848803d68affd271), et cette fois, j'ai présenté les fonctions souvent utilisées pour XPath pour spécifier les données plus correctement. Je vais.
contains () est généralement utilisé pour les recherches floues de valeurs d'attribut ou de chaînes contenues dans du texte.
Par exemple, si vous voulez tout obtenir avec Red dans l'attribut class de ce HTML, écrivez comme suit.
//span[contains(@class,“Red”)]
En d'autres termes, ce XPath signifie obtenir un élément span ** qui contient Red dans la classe **.
Par exemple, si vous souhaitez spécifier un élément contenant les caractères "Rowling" de ce code HTML, écrivez comme suit.
//span[contains(text(),"Rowling")]
** Conseils! ** ** Lorsque vous spécifiez le bouton de saut de page, ** "contient (text ()," next ")" ** est souvent utilisé. Cliquez ici pour savoir comment écrire un XPath qui spécifie un bouton d'avance de page ➡ Comment écrire un XPath qui spécifie un bouton d'avance de page
Dans l'article précédent, j'ai présenté que vous pouvez obtenir les éléments d'ordre en plaçant un nombre entre [](crochet carré). Vous pouvez également spécifier le Nième élément en position.
Par exemple, dans le code HTML ci-dessus, "Produit 3" est le 4ème élément, écrivez-le comme suit.
//tbody/th[4]
En utilisant position () =, écrivez comme suit.
//tbody/th[position()=4]
Lorsque vous obtenez un élément autre que "publicité", puisque "publicité" est le premier élément, écrivez comme suit.
//tbody/th[position()>1]
Si vous souhaitez spécifier un élément contenant plusieurs conditions à la fois, utilisez la fonction et / non / ou.
Si vous voulez obtenir le href comprenant "S_20" et "pdf" à partir de ce HTML, écrivez comme suit.
//a[contains(@href,“S_20”) and contains(@href,“pdf”)]
Si vous souhaitez obtenir [@href] autre que https://helpcenter.octoparse.jp/hc/ja/xpath/S_10.html à partir de ce HTML, écrivez comme suit.
//a[not(contains(@href, "S_10"))]
Si vous voulez obtenir le href contenant M ou L à partir de ce HTML, écrivez comme suit.
//a[contains(@href,”M_”) or contains(@href,”L_”)]
Aussi, si vous voulez obtenir un href autre que M ou L, combinez not et ou et écrivez comme suit.
//a[not(contains(@href,”M_”) or contains(@href,”L_”))]
Les fonctions ci-dessus sont souvent utilisées pour XPath. Si vous voulez en savoir plus sur la syntaxe / les fonctions XPath, veuillez consulter cet article.
Article original: https://helpcenter.octoparse.jp/hc/ja/articles/360012713639
Recommended Posts