如何使用iMacros从谷歌驱动器链接中提取数据?

问题描述:

我正在使用iMacros来自动化某些表单填充Web任务。如何使用iMacros从谷歌驱动器链接中提取数据?

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

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

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

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

但看起来既不提取命令,也不是iMacro浏览器能够从这个链接中提取内容。

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

提示:当我查看页面的源代码时,我看不到包含我的数据的标签。只有一些JavaScript功能。

如果你想留在驱动器,你可以提取该文件的所有内容与

TAG POS=1 TYPE=DIV ATTR=class:drive-viewer-text-content EXTRACT=TXT 

您将获得完整的HTML代码的文件中,并有解析,对你想要的数据。如果你真的只需要TD中的数据,会不会让它成为纯文本文件?然后,您可以将每个TD内容放在一行中,以便更轻松地解析提取的数据。

+0

标记为答案, 。 – Wacao

我认为它更好地简化了参数,并将其保存为一个数组。 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}} 

OUTPUT:

上午|上午|是|由管理员阻止| 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 | Y | Y | Y | Y | Y | Y | Y | Y | Y , pm | pm | Yes |被管理员阻止| Y | Y | Y | Y | Y | Y | N | N | N | N | N | N | N | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y , dt | dt |是|被管理员阻止| 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

+1

谢谢。这条线的伎俩...... 'TAG POS = 1个TYPE = PRE ATTR = TXT:版本= “1.0”> 参数* EXTRACT = TXT' 你能解释一下你为什么选择这个ATTR?以及它是否适用于任何谷歌驱动器文档? – <span class="text-secondary"> <small> <a rel="noopener">Wacao</a></small></span> <span></span>

+0

@wacao,我假设您正在创建Google驱动器文档....所以你需要创建类似于你在问题中的文档的开始....也可以使这个标签更通用....将其更新为更通用的东西并更新你 –