Day29. Blue Prism斜杠好帮手 -BP自动收集股价

经济不景气一份稳定的工作,
相对收入也是稳如鸡肋一般(吃不饱、饿不死),
一想到侄子最近在抱怨刚进入职场,
薪水真是精致的可怜,
新一代的新新人类竟然学人去学理财课程,
课程中谈到可以考虑存股票的理财方法,
但,股市起伏不定,哪舍的股票一直跌下去的日子?

又加上新人刚上班大多是学习的心态,
都不好意思准时下班,
因此就会发现到了家中已经累趴了,
哪有时间理财啊!

其实,只要能掌控股价的波动,
自然停损与停利都将易如反掌,
基於这个需要,
我这叔叔就帮他设计了一个Blue Prism小流程来处理收集每日股价资料的自动作业。

 前集提要

BP自动登入Gmail
(1) BP先设定好Application Modeller与ie浏览器的关联设定。
(2) 再藉由Navigate与Write执行浏览器登入Gmail。

 本集预告

BP自动收集股价
(1) BP先设定好Application Modeller与Chrome浏览器的关联设定。
(2) 再藉由Navigate与Write执行浏览器搜寻指定公司股价资讯,并以Reader来自动撷取股价。

我们接着来看看如何「BP自动收集股价」吧!

1. 设定Application Modeller
(1). 开启Object Studio後,点击Application Modeller
A. 选定Define a new application model,输入Application name: GetItemData
,按下Next
https://ithelp.ithome.com.tw/upload/images/20210929/20141198aBF2XcQ6QI.png

(2). Indicate what type of application you are using
A. 由於是Chrome,因此选定Browser-based Application(Chrome, Firefox or Edge Chromeium)
,按下Next
https://ithelp.ithome.com.tw/upload/images/20210929/20141198u3uR4FJYwc.png

(3). 选定A browser that is launched from an executable file,按下Next
https://ithelp.ithome.com.tw/upload/images/20210929/20141198iOgEDE2idi.png


(4). 设定Chrome.exe所在位置,按下Next
https://ithelp.ithome.com.tw/upload/images/20210929/20141198VM7td7DFPE.png


(5). 输入奇摩股市网址,按下Next
https://ithelp.ithome.com.tw/upload/images/20210929/20141198fzLgcSE1KF.png


(6). 使用预设,按下Next
https://ithelp.ithome.com.tw/upload/images/20210929/20141198By6FTtqFW0.png


(7). 按下Finish
https://ithelp.ithome.com.tw/upload/images/20210929/20141198XTIkAhC5GV.png


(8). 完成设定後左方选定GetInternetData
https://ithelp.ithome.com.tw/upload/images/20210929/20141198P4qUOAkuE2.png
(9). 按下Child(左下方),新增SearchItem项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/20141198F9QlfEiwyX.png

https://ithelp.ithome.com.tw/upload/images/20210929/20141198KOcO7CaVzA.png

(10). 按下Element,新增ClickSearch项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/20141198091QlMLF9G.png

https://ithelp.ithome.com.tw/upload/images/20210929/20141198CyIcKZxCmk.png
(11). 按下Element,新增「股价页」项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/20141198YP11867wri.png
(12). 按下Child,新增「股价区」项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/201411986QLl5PGaFf.png

(13). 按下Element,新增「昨收」项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/20141198mo66D9wWjE.png

(14). 按下Element,新增「开盘」项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/20141198lsYg35UvWr.png

(15). 按下Element,新增「委买价」项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/20141198MIF47lNSVy.png


(16). 按下Element,新增「委卖价」项目,并设定与浏览器位置的关联
https://ithelp.ithome.com.tw/upload/images/20210929/20141198LU8Xjv0KDL.png

2. 设计流程
(1). 新增一个开启奇摩股市网页的Navigate
Element:拖曳自左方GetInternetData、Action:选定Launch
https://ithelp.ithome.com.tw/upload/images/20210929/20141198SiJyWW0cmr.png

(2). 新增一个公司名称的Data Item
Name:公司名称、Data Type: Text、Initial Value: 台积电
https://ithelp.ithome.com.tw/upload/images/20210929/20141198rmV6fh322A.png

(3). 新增一个Writer,按下OK
Value:拖曳自左方、Element:拖曳自右方的SearchItem
https://ithelp.ithome.com.tw/upload/images/20210929/20141198a5clf3ueFd.png

(4). 新增一个Navigate点击送出钮,按下OK
Element:拖曳自左方ClickSearch、Action:选择Click
https://ithelp.ithome.com.tw/upload/images/20210929/20141198WzukVB8Z3K.png


(5). 新增一个Reader读取各项股价,按下OK
新增四个参数:昨收、开盘、委买价、委卖价
Data:选择Get Text
Store In: 可考虑输入与Element相同的名称(并记得按下左方斜方块钮)
https://ithelp.ithome.com.tw/upload/images/20210929/20141198QqwufkMURG.png

3. 串起流程
https://ithelp.ithome.com.tw/upload/images/20210929/20141198zdy8v2LgBX.png

4. 执行流程:
(1). 若已执行过,建议先按下Reset按钮(循环图示),再按下执行图示。
https://ithelp.ithome.com.tw/upload/images/20210929/20141198vTxddC3lwI.png

(2). 执行流程:
点击左上角的三角形执行图示,即开始执行流程。
https://ithelp.ithome.com.tw/upload/images/20210929/20141198vg49PwVmdc.png


(3). 检视结果:
设定好撷取的价格资讯都暂存到Data Item中。
https://ithelp.ithome.com.tw/upload/images/20210929/20141198UL0qHNFtlY.png

这个模型是不是太简单?
(看过的人一定心理低估着,就跟侄子第一次看到时的反应一样)
我说不会啊!我之前拖曳兜拉的Excel流程可拷贝过来用啊!
比如每天收集来的股价资讯可以存入Excel档中,
在收集齐一个月的份量,就可以运用Excel的线图功能将月统计股价展示出来,
Blue Prism藉由流程堆积与排列组合起来可以达成无限想像,
唉!再说下去我都想斜杠股市名嘴了。。。
怎麽办都铁人赛倒数两天了,
我还觉得谈的不够多,哈!哈!
没关系,铁人赛之後我们再来找机会谈谈中级、进阶的技巧。

以下我们再来增长一下BP知识吧!

BP小教室:

导航阶段(Navigate stage)

导航阶段允许您在目标应用程序中执行导航步骤(或操作)。示例包括单击按钮、打开菜单、对话框、关闭窗口、发送>按键等。

属性表

导航属性表单显示两个列表,一个在另一个列表之上。第一个列表是要执行的导航操作列表。这些操作将按顺序执行,>从上到下。例如,第一个动作可能是打开“文件”菜单,第二个动作可能是单击“保存”。这里的顺序很重要,所以你应该>小心地以正确的顺序添加导航操作。

每个导航操作都包含一个应用程序元素和一个操作。应用程序元素是动作的目标(例如要单击的菜单项),动作描述要>对该元素执行的操作(例如单击、打开、最小化等)。

下方列表表示上方列表中当前所选导航操作的一系列输入。例如,如果操作是单击,则可能需要为该单击操作提供坐标。此列表是动态的,取决於在当前行中选择的操作。

添加新的导航操作

首先单击“添加”按钮添加一个新行。然後将应用程序元素从左侧的应用程序资源管理器拖放到适当的字段中。

根据应用程序元素的性质(特别是您在创建应用程序元素时是否选择使其动态化),您可能需要通过单击适当的按钮向>应用程序元素提供参数。这允许在您的业务对像作为流程的一部分运行时识别元素。

接下来,您应该从下拉列表中选择一个操作。此列表根据所选应用程序元素的类型动态变化。如果操作未出现在列表中,则无法针对所选应用程序元素执行该操作。

最後一个字段指示所选操作是否有任何输入(下方列表中要完成的项目),以及它们是否已提供。

每一步後暂停

可以将暂停设置为在导航阶段配置的每个导航操作之後发生。这可以通过 在表单中的Pause After Each Step字段中>设置表达式来提供。如果未设置,运行时引擎在阶段中遇到的步骤後不会暂停。

该字段中的表达式必须解析为一个数字,表示暂停的秒数,或一个时间跨度,表示暂停的时间量。如果提供了数字,则>运行时引擎会遵守小数部分。负值被视为零 - 即。不会暂停。

(以上小知识撷取自Blue Prism online help)


<<:  例行监督表单撰写实务

>>:  Day 15:目前 NOJ 的部署流程

【I Love Vue 】 Day 30 赛後心得与检讨

最後一天了,不免俗的来心得分享一下。 第一次写教学文,没做任何准备就提枪上阵来参加铁人。 老实说每天...

[11] 建立进入页面和流程控制

这边你需要自己制作一个流程控制 不了解的话建可以画个图来确认现在在哪个流程 基本上都会回到主要操控介...

年龄为多少秒

为了了解javascript的变数运算,我们练习去算出一小时、一天、一年、甚至年龄有多少秒 我通常练...

Day28:今天来聊一下Hacking Cloud Computing

Cloud Computing是一种新兴技术,它通过 Internet提供omputing serv...

硬碟上的资料是否有重量?

我的学生前些日子突然脑洞爆发,问我:“存满资料的硬碟是不是比空硬碟重?资料是否有重量?” 我也查了大...