iT邦幫忙

1

【讓機器人做】自動截取網頁資料 + 排程器篇 II

PIZZ 2025-04-21 23:21:491073 瀏覽
  • 分享至 

  • xImage
  •  

接續前一篇:點此進入

本次先展開第5行的IF判斷式內容(5~38行)進行說明:
https://ithelp.ithome.com.tw/upload/images/20250416/20159965FTwaoDrStb.png

第5行的IF判斷式用來確認瀏覽器是否啟動
如果已經啟動的話,
就在瀏覽器上執行重新整理的動作(JS函數)
https://ithelp.ithome.com.tw/upload/images/20250416/20159965DFn8Z2dIdm.png

JS函數:
https://ithelp.ithome.com.tw/upload/images/20250416/20159965UYhBYBHwZW.png

https://ithelp.ithome.com.tw/upload/images/20250416/20159965prkqekT9Fq.png

function ExecuteScript() { /*location.reload(); */ }


這邊會採用JS函數的原因,
除了PAD在瀏覽器自動化的動作裡面沒有"重新整理"外,
在測試時也發現,
於瀏覽器最小化的狀態,
傳送按鍵加F5好像也沒效果......
所以最後是用JS函數了!

至於為什麼要重新整理呢?
因為股價的數值並不是一直維持在進入網頁時的那個值,
而是會一直變動的,
所以每執行流程一次,
就要重新整理,
重新取得當下的數值(不論新舊)


接著8~9行的兩個判斷式,
主要是用來判斷是否在"交易日"及"交易時間內"用的。
(這邊不考慮補班日)
https://ithelp.ithome.com.tw/upload/images/20250416/20159965S7YlmTkNZn.png

第10~26行中加入兩個"區域"這個動作
https://ithelp.ithome.com.tw/upload/images/20250416/201599659IH9eYLXYv.png

https://ithelp.ithome.com.tw/upload/images/20250416/20159965Mj0UYPq2CG.png


在流程中加入"區域"的好處是:
1.將流程依功能分區

可以把流程區域化,
同時,
依照這區域的用途標註在區域名稱上,
當流程有共用給別人的時候,
也能夠讓其他設計者更容易知道那段流程的用途。

2.可以將其中的流程進行"展開"或"縮小"(縮放),

往往一個功能強大的流程,
都無法避免變得很長一大串,
所以能夠縮放的區域可以在除錯時把不需要動到的地方先縮小不看!


第一個區域Got price (10~19行)
https://ithelp.ithome.com.tw/upload/images/20250416/20159965WXdtfTPCpN.png

用途主要是用來取得網頁上的內容,
而這些在內容中包含了當下的"股價",
所以我們還要讓機器人做篩選並取出"股價"(文字型態)。

但由於取出的值是文字型態的,
所以還要做一次文字→數字的轉換,
之後才能比較大小喔!!


※文字的比較大小會變成比較字串的長度或是大小寫之類的
並不會比較數字的數值大小

※※範例的流程是依照我要的目標與得到的值結果去設計的,
所以在不同網站中,
要分割文字、設定變數已及取得子文字的次數都不一定會相同(要視結果去做),
有可能只要做一次,
也有可能要做好幾次!


第二個區域Taeget (20~26行)
https://ithelp.ithome.com.tw/upload/images/20250416/201599657eN6Gni3EE.png

這邊的IF判斷式主要是判斷當下的股價
在值是多少時(175 & 136)跳出不同內容的提醒。

這邊也是看實際需求去做不同的流程設計!


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言