如何在 Google 表格中使用 ImportXML 从 Instagram 和 IGTV 视频中提取观看次数数据?

How to use ImportXML in Google Sheets to pull view count data from a Instagram and IGTV Video?

我正在尝试从 Instagram 上的视频中提取观看次数。这是视频:https://www.instagram.com/p/BxEApSqgNJn/

我已经能够获得 Youtube 和 Facebook 的浏览量,但在 Instagram 上苦苦挣扎。

我使用以下公式从 Facebook 视频中提取数据:

=IFERROR(LEFT(IMPORTXML(H28,"//*[@data-tooltip-position='below']"),LEN(IMPORTXML(H28,"//*[@data-tooltip-position='below']"))-5),"0")

H28 是 Link

它应该显示视频获得的观看次数,在本例中...截至 2019 年 5 月 14 日的观看次数为 351,271。

不幸的是,这是不可能的,因为 Instagram 由 JavaScript 控制,而 Google Sheets 不能 understand/import JS。您可以简单地通过为给定的 link 禁用 JS 来测试它,您将看到一个空白页面

这个检索值的解决方法怎么样?在此解决方法中,该值是从准备 Javascript 的数据中检索的。加载页面时更新数据,并使用 xpath 检索数据,并使用正则表达式检索值。所以我用了这个方法。修改后的公式如下。请将此视为几个答案之一。

示例公式:

在此示例公式中,https://www.instagram.com/p/BxEApSqgNJn/ 被放入单元格 "A1"。

=REGEXEXTRACT(IMPORTXML(A1,"//script[@type='application/ld+json']"),"userInteractionCount"":""(\d+)")
  1. 使用 //script[@type='application/ld+json']IMPORTXML() 的 xpath 检索数据。
  2. 使用 userInteractionCount"":""(\d+)REGEXEXTRACT() 的正则表达式检索值。

结果:

参考文献:

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