首页 > 解决方案 > 如何使importxml只给出一定的数据

问题描述

我试图从一个网站只获得喜欢的数量。目前,我正在使用

=IMPORTXML("https://www.abillionveg.com/articles/vegan-diet-nutrition-guide","//button")

但是,它为我提供了所有按钮的数据。有人可以帮我修改公式以仅显示喜欢吗?抱歉,如果这是一个基本问题,我只是在学习。

标签: google-sheetsgoogle-sheets-importxml

解决方案


  • 您要检索the number of likesusing的数量IMPORTXML

如果我的理解是正确的,这个答案怎么样?请认为这只是几个可能的答案之一。

修改公式1:

=INDEX(SPLIT(IMPORTXML(A1,"//div[@class='ArticleActions__Container-sc-15ye7g8-0 huWdyg'][1]//span[contains(text(),'likes')]")," "),1)
  • 的 URLhttps://www.abillionveg.com/articles/vegan-diet-nutrition-guide放在单元格“A1”中。
  • xpath 是//div[@class='ArticleActions__Container-sc-15ye7g8-0 huWdyg'][1]//span[contains(text(),'likes')].
  • 使用 检索值IMPORTXML
  • 从值中检索数量,###### likes使用SPLITand INDEX
结果:

在此处输入图像描述

修改公式2:

=REGEXEXTRACT(IMPORTXML(A1,"//script[@id='__NEXT_DATA__']"),"likesCount""\:(\d+)") - 1
  • 此结果与修改公式 1 相同。

笔记:

  • 例如,如果=IMPORTXML(A1,"//div[@class='ArticleActions__Container-sc-15ye7g8-0 huWdyg'][1]//span[contains(text(),'likes')]")使用,100 likes则检索。

参考

如果我误解了您的问题并且这不是您想要的结果,我深表歉意。


推荐阅读