RPA 實戰:讓小姐姐填滿你的硬盤(上)

      網友投稿 838 2025-04-07

      某天,我無意逛到某個小網站,如果我不懂代碼,想要網站上全部的妹子,我該怎么做?……幸好有她,她好我也好,她就是 RPA – Robotic Process Automation,中文意思是機器人流程自動化,換句話說就是利用機器人技術來實現業務流程的自動化處理。


      環境安裝

      首先打開另一個小網站 – https://www.hwtelcloud.com/products/rpa,下載【設計器】,并進行使用激活;下載【執行器】,讓程序自己動;此外還需下載瀏覽器驅動和安裝瀏覽器插件。關于軟件的下載安裝等此處就不進行講解,相信您能搞定!

      本大獅發表文章時所用到的軟件版本及環境如下:

      WeAutomate Studio(2.14.0)

      WeAutomate Assistant(2.14.0)

      VM: python 3.8.5 64-bit

      Windows Feature Experience Pack 421.16300.0.3

      Google Chrome 91.0.4472.124 64-bit

      將近1000頁的幫助文檔在 WeAutomate Studio 安裝目錄下:document/RPA_Robot_Development_Guide_zh_cn.pdf

      此外還有更多優質的課程盡在華為云學院: https://ilearningx.huawei.com/portal/courses?q=ANTROBOT

      “技術”解析

      說到圖片,我最先想到的是某度圖片,之前通過使用 NodeJS 爬蟲爬取過該網站搜索出來的圖片,大概的流程如下:

      輸入關鍵字,//*[@id="kw"]這里的 Input 標簽就是我們關鍵字輸入的位置。

      獲取圖片列表,當我們輸入關鍵字并搜索的結果就呈現為頁面的//*[@id="imgid"]/div/ul/li[1]/div/a/img,也就是 classname 為 main_img 的圖片元素

      RPA 實戰:讓小姐姐填滿你的硬盤(上)

      滾動窗口,當我們模擬鼠標滾動時,頁面會加載更多的圖片。

      圖片下載,我們獲取到每個圖片元素的 src 屬性,就是我們最終的圖片-。

      那么整個流程下來,在 RPA 中我們需要用到哪些控件呢?首先我們要從網頁獲取圖片,打開網頁控件是第一個用到的;其次我們要獲取網頁的高度并進行滾動、獲取頁面圖片元素及src屬性,我們可以通過執行 js 代碼控件來幫我們完成;此外,涉及的一些流程控制我們必須依賴分支、循環等控件;最后下載圖片則通過下載文件控件實現。

      實施過程

      RPA 的實施一般遵循下面的生命周期

      RPA 評估

      首先 RPA 評估,針對此次我的這個“大膽”的想法,我的整個業務流程完成能夠用自動化來實現,當然投資回報率(ROI)對我來說,完全只需投入少量的時間就能獲取到海量的數據,理論上是非常劃算的。本次實踐不對 RPA 工具本身做任何評價,本著新手小白的學習態度,一款好用的強大的稱手的 RPA 工具請按照自身的場景去選取,如同技術選型,對開發工具做一定的調研、體驗才能更好的選擇合適的工具。

      RPA 設計

      接著 RPA 設計,我們先梳理一下完整的業務流程,細粒度精確到每一個點,比如網頁數據怎么獲取、圖片怎么下載等等,勢必會涉及到一些邏輯,比如分支邏輯、循環邏輯;除此之外,我們需要明確每個操作的輸入和輸出;在實際工作中,我們可能還需形成具體的文檔。

      RPA 開發

      簡單梳理完流程之后,開始開發我的第一個 RPA 程序。盡管整個流程梳理起來非常簡單,但實際開發的時候,由于對工具、編程語言基礎等不熟練,我踩了一個又一個的坑,最終走出了結合 JS 代碼以及 NodeJS 爬蟲的思路來開發這個圖片爬取的 RPA 程序。

      全局變量定義

      由于本大獅功力不夠,暫時沒能實現打開網頁之后動態獲取跳轉的鏈接,因此我直接使用的輸入關鍵字搜索之后的 url 作為全局變量 url 的值,拼接 keyword 來實現結果頁面圖片的獲取。

      打開網頁

      寫得比較隨意,中文在瀏覽器地址中可以做 url 編碼處理,這里可以引入 python 模塊哦!

      獲取瀏覽器窗口高度

      建議此操作前先調用控件讓瀏覽器窗口最大化,然后通過 JS 代碼獲取瀏覽器窗口高度并賦值給 height,方便后面的滾動操作。執行 JS 代碼控件是有返回值的,在代碼中通過 return 可以返回指定內容。

      return document.body.offsetHeight;

      循環操作

      此處模擬了 JS 的定時器方法,使用While來進行滾動操作的循環。假如我想獲取 10k 張圖片,第一次加載的結果可能才幾十張,如果是人工操作的話,我需要不斷滾動瀏覽器以加載獲得更多的數據。那機器人是怎么自動化操作呢?我們給它設置一個延時操作,然后調用 JS 代碼滾動瀏覽器,同時更新height:

      let height=@{height}*2; window.scrollTo(0,height); return height;

      獲取圖片鏈接

      同樣的通過調用執行 JS 代碼控件來獲取圖片的鏈接和數量,為圖片下載和退出循環做準備。

      let arrs = document.querySelectorAll('.main_img'); let urls = [] for (let img of arrs){urls .push(img.src)} return urls;

      退出循環

      比較預期的圖片數量和實際的圖片數量,如果圖片夠了,我們就退出循環,進行下一步操作。

      創建文件夾

      這里的步驟非必須,根據實際情況取舍,我這里是簡單的嘗試并熟悉 RPA 工具;不過邏輯還不夠嚴謹,可以優化的點實在是太多。

      遍歷圖片鏈接并下載

      “沒有什么問題是一個 for 循環不能解決的,如果有,那就兩個”,此處能夠直接進行循環是因為之前 JS 代碼返回的值已經是 list 了,因此將 url 遍歷出來調用下載文件控件就能直接下載。

      至此,一個簡單的圖片爬取 RPA 程序已經開發完畢。

      RPA 測試

      如果是大型的項目,必然會經過單元測試、集成測試等全面的測試歷練之后才會發布。而對于此次的 RPA 圖片爬取小程序,我只做了簡單的調試,理論上調試依舊屬于開發階段,嚴格來說需要模擬各種場景、各種系統和上下文進行正確性測試等,測試完成后才可以上線。

      作為偽測試,我輸入華為美女 100 張,結果程序給了我 130 張,XDM 你們說測試通過嗎?

      RPA 優化

      畢竟是 Hello World 級別的程序,出自 HW 攻城獅之手,因此有很多地方需要完善,比如邏輯的嚴謹性、沒有考慮邊界、下載的文件名雜亂等。畢竟真實的項目如果是這么個水平,估計…… RPA 的優化可以從最優設計、從性能、從實際業務需求等方面去實施。當然,屏幕前的您一定有自己的優化思路,期待您與我分享!

      小結

      回到標題,咦,為什么是上篇,難道還有下篇?敬請期待吧!那么上篇講了哪些知識點呢?首先是 RPA 環境搭建及入門,然后是 RPA 程序開發的套路,接著是網頁元素處理、文件下載、如何調用 python 模塊、如何調用 JS 等,最后是簡單測試及優化建議。感謝閱讀,希望能幫到您!

      最后,附送幾個G的學習資料:

      https://ilearningx.huawei.com/portal/courses?q=ANTROBOT

      如果您對本文有任何意見,歡迎與我聯系,公眾號:胡琦, Wechat: Hugi66

      附件: WebTest.zip 70.47KB 下載次數:2次

      機器人 網絡智能體

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:還在用絲襪哥(Swagger)做API文檔?快來看看這款幫你減少百分之九十工作量的開源工具!
      下一篇:Docker是什么
      相關文章
      亚洲午夜久久久久久噜噜噜| 4480yy私人影院亚洲| 亚洲国产成人私人影院| 亚洲无码日韩精品第一页| 亚洲av成人一区二区三区观看在线| 亚洲日本VA午夜在线影院| 亚洲 欧洲 自拍 另类 校园| 亚洲精品二三区伊人久久| 男人天堂2018亚洲男人天堂| 亚洲色中文字幕在线播放| 亚洲人AV在线无码影院观看| 亚洲综合精品伊人久久| 亚洲第一综合天堂另类专| 国产产在线精品亚洲AAVV| 亚洲AV无码成H人在线观看| 亚洲日韩在线观看| 亚洲无码在线播放| 久久精品7亚洲午夜a| 亚洲视频一区网站| 亚洲人成免费电影| 欧洲 亚洲 国产图片综合| 亚洲精品蜜夜内射| xvideos亚洲永久网址| 国产成人综合久久精品亚洲| 亚洲AV无码一区二三区 | 日本系列1页亚洲系列| 国产亚洲视频在线观看网址| 亚洲精品无码成人片在线观看 | 在线a亚洲v天堂网2018| 久久99亚洲综合精品首页| 亚洲中文字幕日产乱码高清app| 国产偷窥女洗浴在线观看亚洲| 亚洲精品夜夜夜妓女网| 亚洲一区影音先锋色资源| 亚洲一级毛片免费看| 亚洲国产成人久久一区二区三区| 亚洲精品麻豆av| 久久亚洲精品无码观看不卡| 亚洲精品国产成人片| 78成人精品电影在线播放日韩精品电影一区亚洲 | 亚洲精华国产精华精华液 |