如何使用iMacros从Google云端硬盘链接中提取数据?

时间:2017-08-25 21:42:53

标签: google-drive-api imacros

我正在使用iMacros自动执行某些表单填充Web任务。

为了避免对某些参数进行硬编码,我计划将参数放在htm文件中,并在开始使用其余脚本之前在线提取参数。我相信这种方式,我可以从一个地方维护脚本运行的多个实例的参数。

但是,我遇到了一个问题,同时解压缩了我上传到谷歌驱动器的htm文件。

以下是我想从中提取数据的链接。

https://drive.google.com/file/d/0B_GgQPGYiDg8UVBTOEYyVGk1Yk0

但看起来EXTRACT命令和iMacro浏览器都无法从此链接中提取内容。

另一种方法是在任何免费的网络托管平台上托管htm文件。购买它似乎不值得一个文件。应该有任何替代的简单解决方案。

提示:当我查看页面的来源时,我看不到包含我的数据的标签。只有一些javascript函数。

2 个答案:

答案 0 :(得分:0)

如果您想继续使用驱动器,可以使用

提取该文件的所有内容
TAG POS=1 TYPE=DIV ATTR=class:drive-viewer-text-content EXTRACT=TXT

您将在文件中获得完整的HTML代码,并且必须针对您想要的数据进行解析。如果您只需要TD中的数据,是否会使纯文本文件适合您?然后,您可以将各个TD内容分别放在一行中,以便更轻松地解析提取的数据。

答案 1 :(得分:0)

我认为您更好地简化参数并将其保留为数组。 IMacros能够轻松提取文本。请在下面找到我的代码,我在其中提取文本并进行一些基本处理,最后返回一个带参数的数组。

<强> CODE:

VERSION BUILD=9030808 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !TIMEOUT_PAGE 10
URL GOTO=https://drive.google.com/file/d/0B_GgQPGYiDg8UVBTOEYyVGk1Yk0/edit
TAG POS=1 TYPE=PRE ATTR=TXT:<?xml<SP>version="1.0"?><html><SP><head><SP><title>Parameter* EXTRACT=TXT
SET !VAR1 EVAL("var s='{{!EXTRACT}}';s=s.match(/<TD>([^<]+)<.TD>/gm);s=s.map(e => e.replace('<TD>', '').replace('</TD>', ''));s;")
PROMPT {{!VAR1}}

<强>输出:

  

am | am | Yes |被管理员阻止| Y | Y | Y | N | N | N | N | N | N | N | N | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y   ,   pm | pm | Yes |由管理员阻止| Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | N | N | N | N | N | N | N | N | Y | Y | Y | Y | Y | Y | Y | Y | Y |ÿ   ,   dt | dt | Yes |由管理员阻止| Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ÿ| Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y