捕獲和轉換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 分別。 您可以通過點擊 篩選按鈕 圖標,其中顯示了一個嚮導,可簡化過濾器的構造。

如此處所示構建數據集後,您可以決定如何在 導出選項 標籤。