041-学习笔记:RPA操作Chrome的两个小技巧
大家好,我是小洛哥,一个刚刚开始每天写作的新人。
日更 100 天,第 41 天。
前段时间不是托管了两个公众号,只负责发文章就好。
于是每天有一项重复的工作,就是下载好文章,打开公众号,贴进去,排版,发送。
于是干了几天就把这个流程给 RPA 化了。虽然排版还需要手动,但大幅降低重复性的工作还是蛮爽的。
不过这里有两个难点:
- 托管的两个账号,如果用一个浏览器反复退出登录,切不说账号好不好的问题,就挺麻烦的
- RPA 程序里,因为在公众号后台元素很不稳定,当时采取了简单粗暴的定位点击法,但每次浏览器启动后窗口大小和位置都不同
01
其中难点 1,搜索了一下很快就能解决了,就是使用 Chrome 里不同的个人资料加上 Chrome 的启动参数。
在 Chrome 新建个人资料后,可以将个人资料直接发送快捷方式到桌面,右键属性打开后就可以看到相关的参数
所以我有三个参数,需要谁用谁就好了:
--profile-directory="Default"
日常用--profile-directory="Profile 1"
公众号 1--profile-directory="Profile 2"
公众号 2
当然,在 打开网页 - 影刀帮助中心 里也提到可以使用 --user-data-dir="绝对路径"
来解决这个问题。
02
至于难点 2,上面提到的帮助中心里也提到了可以使用参数 --start-maximized
,来让 Chrome 启动后窗口最大化。不过因为我是在发现这个参数之前就已经写好了 RPA(我习惯在写 RPA 应用时左半屏显示影刀,右半屏显示浏览器),各种鼠标点击位置、元素位置都已经弄好了,懒得再去重新跑一边流程定位,就想去找找能不能启动时直接限定窗口大小和位置。
当然也找到了,分别是 --window-size=1440,800
和 --window-position=0,0
这样限定具体大小和位置的好处,我想就是能够结合影刀里位置相关的设定「相对于激活窗口左上角」,在不同尺寸的显示器下,都能让各种位置变成绝对值吧。
03
将上面的三个参数组合起来,就是我常用的启动参数了
--profile-directory="Default" --window-size=1296,1039 --window-position=1273,0
--profile-directory="Profile 1" --window-size=1296,1039 --window-position=1273,0
--profile-directory="Profile 2" --window-size=1296,1039 --window-position=1273,0
但是这里有一个问题阻碍了我很久,需要注意⚠️:
不知为何这些命令行参数,一定要首先运行「关闭网页 - 关闭所有网页」的指令才能生效,有时甚至需要「终止浏览器进程」。就使我在本地写 RPA 应用时,只能用 Edge 浏览器来查资料了,多少还是有点不太方便。
这个是什么原因还不太清楚,希望影刀官方能优化一下。