【发布时间】:2021-10-20 04:19:44
【问题描述】:
标记的标签 黄色有我想要 XPATH 的文本 我使用以下方法获得了第一个标签的 XPATH:
'//div[@class="recipe-meta-item-body"][1]/text()'
但我被其他两个突出显示的标签卡住了。
这里应该做什么,或者其他具有相似类和标签的标签的XPATH是什么?
【问题讨论】:
标签: python web-scraping xpath scrapy css-selectors
标记的标签 黄色有我想要 XPATH 的文本 我使用以下方法获得了第一个标签的 XPATH:
'//div[@class="recipe-meta-item-body"][1]/text()'
但我被其他两个突出显示的标签卡住了。
这里应该做什么,或者其他具有相似类和标签的标签的XPATH是什么?
【问题讨论】:
标签: python web-scraping xpath scrapy css-selectors
只需删除索引 ([1]) 以使您的 XPath 适用于所有必需的节点
//div[@class="recipe-meta-item-body"]/text()
【讨论】:
//div[@class="recipe-meta-item"]//text() 或分别获取两个文本节点,首先是 //div[@class="recipe-meta-item-header"]/text() 和第二个 //div[@class="recipe-meta-item-body"]/text() 值
要以块“preptime: 10min”、“cooktime: 10min”、“servings:'6”的形式获取输出,请使用此 XPath:
//div[@class="recipe-meta-item"]/text()
【讨论】:
In [5]: response.xpath('//div[@class="recipe-meta-item"]/*/text()').getall()
Out[5]:
['prep:',
'10 mins ',
'cook:',
'15 mins ',
'total:',
'25 mins ',
'Servings:',
'6 ',
'Yield:',
'6 servings ']
【讨论】: