如何从Scrapy中的文件中提取p标记内的内部文本

0ejtzxu1  于 5个月前  发布在  其他
关注(0)|答案(1)|浏览(66)

我使用css选择器来检索p标签,我试图从第一个p标签中提取文本。但它总是包含p标签的html内容。下面是我的代码。

section_div = response.css('div[data-testid="talent-profile-page-talent-info"]')
p_names = section_div.css("section#talent-summary >p")
name = p_names[0].extract()

字符串
下面是p标签html:<p color="inherit" class="Text-sc-1d6qffq-0 eBczUW">Bob Guiney</p>
当然,我知道还有其他方法可以获得内部文本,但我想这样做。
有没有什么函数可以只从XML中获取内部文本?我只需要获取Bob Guiney
这是我尝试过的,但它只在部分中没有任何其他标记时才有效。

p_names = section_div.css("section#talent-summary >p::text")
name = p_names[0].get()

2admgd59

2admgd591#

要选择内部文本,可以使用::text伪元素。
因此,您必须更新代码,

p_names = section_div.css("section#talent-summary > p::text")

字符串
这将从p标签中提取文本内容。
如果有多个p标记,则可以使用get()

name = p_names[n].get()


其中index是从第一个p标记的0开始到第n个p标记的数字,您希望从中获取数据。

相关问题