在web-harvest中定义数组变量

时间:2011-11-02 11:18:38

标签: arrays variables associative-array webharvest

我正在使用Web-Harvest从网站中提取一些数据 Site获取一个名为Code的POST变量,并根据它提供数据 可用代码从该站点的另一页收集 我如何定义一个像变量这样的数组来存储那些与代码相关的数据,这些数据就像变量那样能让我在主程序中用循环检索它们?
我的意思是这样的:

Data[code1]={key1=val1, key2=val2, key3=val3,...}
Data[code2]={key1=val1, key2=val2, key3=val3,...}
Data[code3]={key1=val1, key2=val2, key3=val3,...}
Data[code4]={key1=val1, key2=val2, key3=val3,...}
...

1 个答案:

答案 0 :(得分:3)

您可以使用<script>标记并使用BeanShell,Groovy或JavaScript在其中构建数组。默认为BeanShell。

然后使用SetContextVar()方法或return的{​​{1}}属性将其公开给您的脚本。

下面是构建字符串数组<script>然后使用codes迭代它们的示例。

<loop>

详细了解Web-Harvest manual中的<?xml version="1.0" encoding="UTF-8"?> <config> <script><![CDATA[ String[] codes = new String[] {"one", "two", "three"}; SetContextVar("codes", codes); ]]></script> <loop item="code"> <list> <var name="codes" /> </list> <body> <var name="code" /> </body> </loop> </config>