首页 > 解决方案 > Google 电子表格:来自 Google Drive .txt 的 ImportXML

问题描述

所以,我对这些东西有点菜鸟,但我真的需要让这个工作来减少我的日常工作量。

目标:

.txt在 google 电子表格中,将上传到 Google Drive 文件夹的文件内容提取到一个单元格中。

我找到了一个 Google 电子表格插件,它可以提取给定 Google Drive 文件夹中所有文件的文件和共享链接。它工作正常,它应该是自动化它的第一步。

有了 URL,现在我需要使用=ImportXML将链接中的数据绘制到单元格中。这是一个简单的 .txt 文件,下面是一个示例:

https://drive.google.com/file/d/1aS-AGcfs6nQYX3Mq6arm8K8BzuimAAES/view 这是检查视图上的元素: drive-viewer-text-page 到目前为止,我尝试的公式是:

=importxml("https://drive.google.com/file/d/1aS-AGcfs6nQYX3Mq6arm8K8BzuimAAES/view?usp=sharing", "//body[text()='drive-viewer-text-page']/@*")

我还尝试使用//divand//pre代替 body,以及手动输入整个路径(使用单个“/”包含 10 个 div)。

到目前为止,我不断收到单元格上带有“#N/A”的空内容消息。我也试过有//body[contains(text(), 'drive')]/@href没有//body[contains(text(), 'drive')]/@*积极的结果。

欢迎任何帮助,也许我应该从一个更简单的任务开始哈哈。

提前致谢。

最好的问候,卢卡斯。

编辑: 我很确定必须从其他 URL 检索文件的内容,查看器不是文件的直接 URL,但我似乎找不到它。也欢迎任何帮助......我也需要自动化它。

标签: xmlxpathgoogle-sheets

解决方案


这个解决方法怎么样?在此解决方法中,我使用了文本文件和 IMPORTDATA() 的直接链接。

在您的情况下,共享 URL 如下所示。

https://drive.google.com/file/d/1aS-AGcfs6nQYX3Mq6arm8K8BzuimAAES/view?usp=sharing

将其转换为直接链接时,URL 如下所示。

http://drive.google.com/uc?export=view&id=1aS-AGcfs6nQYX3Mq6arm8K8BzuimAAES

这用于 IMPORTDATA()。

我准备了 2 个模式,因为我不确定你想要什么结果。对于这 2 种模式,上述 URL 被置于“A1”。

模式1:

=ARRAYFORMULA(SPLIT(IMPORTDATA(A1)," "))
  • 通过 IMPORTDATA() 检索值。
  • 将值拆分为
结果 :

在此处输入图像描述

模式 2:

=ARRAYFORMULA(SPLIT(REGEXREPLACE(IMPORTDATA(A1)," {2,}",","),","))
  • 通过 IMPORTDATA() 检索值。
  • 将大于 2 的空格替换为,使用 REGEXREPLACE()。
  • 将值拆分为,
结果 :

在此处输入图像描述

笔记 :

  • 如果您想导入更复杂的值,Google Apps 脚本可能适合这种情况。

参考 :

如果我误解了你的问题,我很抱歉。


推荐阅读