Un incontournable pour progresser ! Conseils sur l'utilisation des sélecteurs lxml et une liste des sélecteurs pris en charge !
Vue d'ensemble :
Les sélecteurs sont un outil très important lors du grattage ou de l'extraction de données Web. En Python, il existe de nombreuses bibliothèques de sélecteurs parmi lesquelles choisir, parmi lesquelles lxml est une puissante bibliothèque de sélecteurs. Cet article présentera les compétences d'utilisation du sélecteur lxml et une liste des sélecteurs pris en charge pour aider les lecteurs à améliorer encore l'efficacité de l'extraction de données.
1. Introduction au sélecteur lxml
lxml est une bibliothèque d'analyseur basée sur Python qui fournit des sélecteurs XPath extensibles et des sélecteurs CSS pour l'analyse des documents HTML et XML. Le principal avantage du sélecteur lxml est qu’il est rapide, puissant et adapté au traitement de fichiers volumineux. Avant d'utiliser le sélecteur lxml, vous devez d'abord installer la bibliothèque lxml. Vous pouvez l'installer via la commande suivante :
pip install lxml
2. L'utilisation de base du sélecteur lxml
L'utilisation de base du sélecteur lxml est très simple. il suffit d'importer le module correspondant et de créer un objet sélecteur, puis d'utiliser l'objet sélecteur pour extraire les données.
Tout d'abord, importez la bibliothèque lxml et le module correspondant :
from lxml import etree
Ensuite, analysez le document HTML ou XML et créez un objet sélecteur :
# 解析HTML文档 html = ''' <html> <body> <div class="container"> <h1>标题1</h1> <p class="content">内容1</p> </div> <div class="container"> <h1>标题2</h1> <p class="content">内容2</p> </div> </body> </html> ''' # 创建选择器对象 selector = etree.HTML(html)
Ensuite, vous pouvez utiliser l'objet sélecteur pour extraire les données. Le sélecteur lxml prend en charge les sélecteurs XPath et les sélecteurs CSS. Leur utilisation sera présentée ci-dessous.
XPath (XML Path Language) est un langage utilisé pour naviguer et extraire des informations dans des documents XML ou HTML. Le sélecteur lxml prend en charge les sélecteurs XPath, grâce auxquels les éléments à extraire peuvent être localisés avec précision.
La syntaxe XPath courante comprend :
/
, //
, []
/
、//
、[]
@
text()
..
以下是几个XPath选择器的示例:
# 提取h1标签的文本 titles = selector.xpath('//h1/text()') print(titles) # 输出:['标题1', '标题2'] # 提取p标签的属性class值 classes = selector.xpath('//p/@class') print(classes) # 输出:['content', 'content']
CSS(Cascading Style Sheets)选择器是一种用于在HTML文档中选择元素的语言。lxml选择器也支持CSS选择器,通过CSS选择器可以通过标签、类、ID等方式进行元素的定位。
常见的CSS选择器包括:
.类名
#ID名
+
~
以下是几个CSS选择器的示例:
# 提取h1标签的文本 titles = selector.cssselect('h1') for title in titles: print(title.text) # 输出:标题1、标题2 # 提取p标签的属性class值 classes = selector.cssselect('p.content') for p in classes: print(p.get('class')) # 输出:content、content
三、lxml选择器支持的选择器一览
lxml选择器支持的选择器包括XPath选择器和CSS选择器,下面是一些常用的选择器:
XPath选择器:
/
:选择根节点//
:选择所有节点[]
:条件选择@
:选择属性text()
:选择文本..
:选择父节点CSS选择器:
.类名
#ID名
+
~
@
text()
Sélectionnez le nœud parent : ..
rrreee
.Nom de la classe
🎜🎜Sélectionner l'ID : #ID nom
🎜🎜Sélectionner le parent- relation enfant : Espace 🎜🎜Sélectionnez la relation fraternelle adjacente : +
🎜🎜Sélectionnez la relation fraternelle suivante : ~
🎜🎜🎜Voici plusieurs exemples de sélecteurs CSS : 🎜rrreee 🎜3. Liste des sélecteurs pris en charge par le sélecteur lxml 🎜🎜 Les sélecteurs pris en charge par le sélecteur lxml incluent le sélecteur XPath et le sélecteur CSS Voici quelques sélecteurs couramment utilisés : 🎜🎜🎜🎜Sélecteur XPath : 🎜🎜🎜/
: Sélectionnez la racine. node🎜🎜//
: Sélectionnez tous les nœuds🎜🎜[]
: Sélection conditionnelle🎜🎜@
: Sélectionnez les attributs 🎜🎜text( )
: Sélectionnez le texte 🎜🎜..
: Sélectionnez le nœud parent 🎜🎜🎜🎜🎜Sélecteur CSS : 🎜🎜🎜 Sélecteur de balise : nom de la balise 🎜🎜Sélecteur de classe : .Nom de la classe
🎜🎜Sélecteur d'ID : #ID nom
🎜🎜Relation père-enfant : espace🎜🎜Relation fraternelle adjacente : +🎜🎜Confrérie suivante : <code>~
🎜🎜🎜🎜🎜En plus des sélecteurs couramment utilisés ci-dessus, lxml prend également en charge davantage de sélecteurs, tels que les sélecteurs de position, les sélecteurs d'attributs, etc., les lecteurs peuvent consulter la documentation officielle de lxml pour une étude approfondie et compréhension. 🎜🎜Conclusion : 🎜🎜lxml selector est une puissante bibliothèque de sélecteurs qui prend en charge les sélecteurs XPath et CSS, adaptée à l'analyse et à l'extraction de données de documents HTML et XML. Cet article présente l'utilisation de base des sélecteurs lxml et des sélecteurs couramment utilisés. Nous espérons que les lecteurs pourront mieux maîtriser et appliquer les sélecteurs lxml grâce à l'apprentissage et à la pratique, et améliorer l'efficacité et la précision de l'extraction des données. 🎜
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!