RPA 實戰應用|五分鐘帶你看懂電商產業背後的爬蟲機器人(下)

如何透過RPA抓取所需的網頁資訊(爬蟲)呢

恭喜大家,來到了本系列文的最後一篇文章!如果還沒看過前面所分享的<RPA 實戰應用(上)>及<RPA 實戰應用(中)>的讀者們,建議可以先瀏覽前面的文章,才會更了解電商產業與爬蟲機器人的脈絡和觀點,那麼話不多說正文開始!

前言

前面的文章中,主要和大家分享爬蟲概念以及如何應用在電商產業;然而要如何透過爬蟲將需要的網頁資訊進行抓取呢

本篇文將著重於此,以實例提供大家 RPA 的數據抓取情境,讓沒有程式背景的人了解如何不用撰寫語法快速爬蟲。

RPA(Robotic Process Automation)是近期企業用以優化既有流程的熱門解決方案,因為其圖像化的使用介面讓不具程式背景的工作者也能快速上手,可以說是AI時代和數位轉型的效率改革新利器!

在今天所分享的案例中,我們假定是一群希望了解美國房屋市場的消費者,因此將從美國的房屋網站 Zillow 進行房屋資訊的爬蟲和下載,了解區域的房屋資訊,像是房價、地址、房間數等;而在使用 RPA 進行數據抓取時,我們最主要會使用到的功能包含:Data Scraping, Output Data Table, Write Range 等,以下也將分別進行介紹。

要如何透過RPA抓資料?

我們首先要先確定自己要抓取的資料目標,在這次的示範中,我們主要希望抓取的資訊是房屋概況,像是幾間房、價格、坪數等,如圖片所框選文字:

Data Scraping 數據抓取

首先,只要在 UiPath 中點擊上方列的「數據抓取」功能,就會直接連結到網站畫面,並幫我們擷取網頁所需的資訊,而不需撰寫任何代碼,用戶只要點選欲下載的資訊,如上述所提的坪數、房間數以及價格等資訊,UiPath 就會如下圖自動將點擊的資訊進行反白註記。

Zillow 網站

使用UiPath相當便利的一件事,就是它會判斷我們想要下載的資訊形式,因此上方的資料辨識動作,我們僅需要進行兩次,之後 UiPath 就會將相似資料類型進行抓取。

我們也可以將資料標籤進行命名,讓我們可以更清楚地了解所抓取到的資料內容,並利於之後輸出辨別,而基本上透過這個流程我們就可以輕易地進行網站爬蟲,不需輸入任何程式語法。

Extract Data 之 Properties 介紹

在使用「數據抓取」功能時,也可以在 UiPath 的 Properties 中進行更完整的操作,如下圖可以在 MaxNumberOfResults 中指定想下載的資料數目,爬到此數值的資料量即結束。

此外,下圖的 NextLinkSelector 也是相當重要的功能,當我們使用「數據抓取」並和 UiPath 溝通說要下載的資料形式後,也需去點選網站中下一頁的 icon,這樣才能讓 UiPath 抓取後續幾頁,將整個網站的類似資訊都蒐集,而點選網站下一頁的操作顯示,就會呈現在 NextLinkSelector 中,因此若該欄位沒東西的話,就代表此爬蟲將只會爬一頁網頁內容喔。

資料抓到了,下一步呢?

通常在成功取得資料後,可以將其匯到 Excel 中,以便後續的整理和分析,因此接著將分享該如何透過 UiPath 來實現。在我們如上所述,成功抓取到所需要的資訊後,便需要在上圖中 Properties 的 Output 創建新的變數(在此範例中將該變數稱為 ExtractDataTable),後續才可以將資料進行輸出。

Output Data Table

緊接著如下圖,當設定好上面提及的輸出變數(ExtractDataTable)後,我們就可以使用 OutputDataTable(輸出數據表)這個功能,並在 Input 欄位填寫我們剛剛設定的 ExtractDataTable 變數,即可將抓取資訊匯出。

而因為此功能的輸出格式是 "text" 記事本形式(可看 Output 欄位說明),因此在輸出時,會將所抓到的資料灌到記事本中,但因為我們最終是希望以 Excel 格式進行梳理,因此還需要透過 "Write Range" 功能來實現。

Write Range

因此最後,我們可以用 Write Range 來將剛剛的記事本資料,進一步匯整到 Excel 中,在這部分的操作就相當直覺,只要按照欄位資訊填寫 Input 欄位、Excel 表名稱等,即可完成。

成功執行 RPA 機器人後,便可以得到如下圖的結果,成功看到我們希望抓取的資訊,像是價格、房間數、衛浴數、坪數等,都被整理到 Excel 中,等待進行下一步的清洗和分析,如此我們就完成初步的 RPA 網站爬蟲了!

總結與觀點

這篇文章主要和大家分享怎麼透過 RPA 軟體 UiPath 進行爬蟲,主要是以美國房屋平台做為案例和大家介紹。

而在這個實例過程中,可發覺使用 RPA 進行爬蟲確實是不需撰寫任何語法,透過內部建立好的模組即可達到抓取資料的目的,因此更加友善、彈性和容易實行,但仍有兩點是在這個流程中,可以進一步思考和改進的地方:

  • 網站限制
    之所以採取美國房屋平台作為案例,主要是因其網站內容較固定、一致,可讓 RPA 較易進行判斷和抓取資訊;倘若今天網站內容每頁格式都不同,爬蟲難度便會大幅提高,此時使用 RPA 操作可能就會更加複雜。
  • 資料清理
    在這個案例中最後的結果,可以看到於 Excel 中所彙整的資料仍相當雜亂,像有一些空格、不必要符號等,而這其實並非 RPA 的問題,事實上也是可透過 RPA 其他內建功能,進行資料清洗再匯到 Excel 中,待日後有機會再進行分享!

在這三篇文章中,希望帶給大家了解爬蟲的觀念電商產業怎麼運用爬蟲增加競爭力,以及該如何快速創建自己的爬蟲機器人,希望能夠帶給大家更多元的想像和啟發,了解到爬蟲不是工程師專屬的武器,而是你我皆可運用的一項關鍵成功因素。讓 RPA 成為你導入爬蟲機器人的第一步!

如果你/妳喜歡這篇文章,歡迎透過拍手,讓我們更有動力寫下去!
這次的分享到此告一段落,想了解更多RPA在數位轉型過程中所扮演的角色、UiPath操作技巧與實務應用,以及數位轉型相關趨勢與心得,歡迎追蹤RPA數位優化器的臉書粉絲專頁與我們互動,我們下次見!
🚀 臉書粉絲專頁傳送門:RPA數位優化器

--

--

RPA 數位優化器

我們是以「RPA機器人流程自動化」為主題的中文學習社群,旨在分享RPA相關學習資源、應用實例以及最新發展趨勢,讓每位工作者能透過各項數位工具的有效應用,創造數位優化與轉型契機。