捕获和转换Web的工具

提取数据并进行转换 intoa数据集

最常见的要求之一是从网站提取数据并将其打开 int可以导出以进行进一步处理的表格结构。 但是,什么是数据集以及如何在数据集中使用 网页抓取工具?

数据集示例:价格表

以下是数据集中包含的表数据 价位表,表格由三列组成 物品标签, 商品描述 商品价格.

物品标签 商品描述 商品价格
摄像头 拍摄数码照片 $99.00

要创建此数据集,您将需要使用以下刮刮说明。

Data.save('Camera', 'price list', 'item label');
Data.save('Takes digital photos', 'price list', 'item description');
Data.save('$99.00', 'price list', 'item price');

这使用 Data.save 添加一个方法 数据值 到特定的 数据集 。 每次 Data.save 使用相同的数据集和列名称参数调用方法,将新行添加到该列。 但是,上面的抓取指令不是非常有用,因为我们正在使用静态值创建数据集。 下面的代码显示了网页的HTML,然后我们将编写抓取指令以从网页中动态提取数据,并 save it intoa数据集。

<html>
    <body>
        <span id="spnLabel">Nikon 1055</span>
        <span id="spnDescription">Great little camera, creates clear sharp images.</span>
        <span id="spnPrice">$99.99</span>
    </body>
</html>

我们现在将使用 Page.getTagValue 从span标签中提取值的方法。

Data.save(Page.getTagValue({"id":{"equals":"spnLabel"}}), 'price list', 'item label');
Data.save(Page.getTagValue({"id":{"equals":"spnDescription"}}), 'price list', 'item description');
Data.save(Page.getTagValue({"id":{"equals":"spnPrice"}}), 'price list', 'item price');

如您所见 Page.getTagValue 方法使用过滤器,该过滤器唯一地标识需要从中提取文本的HTML元素。 在这种情况下,过滤器指定id HTML属性应等于 spnLabel, spnDescription or spnPrice 分别。 您可以通过点击 筛选按钮 图标,其中显示了一个向导,可简化过滤器的构造。

如此处所示构建数据集后,您可以决定如何在 导出选项 标签。