Created
March 25, 2023 04:15
-
-
Save sxfmol/d9ec6d854249b3b660a20e8fc81e07df to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
在XPath中,text()、extract()和get()区别? | |
在XPath中,text()、extract()和get()都可以用来获取节点的值,但它们的具体用法略有不同。 | |
text():用于获取当前节点下的所有文本内容。例如,response.xpath('//title/text()').extract_first()可以获取文档中<title>标签中的文本内容。 | |
extract():用于提取当前节点下的所有HTML代码。它会将标签和标签内容都提取出来,并作为字符串返回。例如,response.xpath('//title').extract_first()会返回包含<title>标签和其中的文本内容的字符串。 | |
get():用于获取当前节点下的某个属性的值。例如,response.xpath('//a/@href').get()可以获取所有<a>标签中的href属性的值。 | |
一般来说,如果我们只需要获取某个节点的文本内容,就可以使用text()方法;如果我们需要获取节点的标签和标签内容,就可以使用extract()方法;如果我们需要获取节点的某个属性的值,就可以使用get()方法。 | |
需要注意的是,extract()方法返回的是一个列表,如果想要获取其中的第一个元素,可以使用extract_first()方法。同样地,get()方法也可以使用get_first()方法获取第一个元素。 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment