Automa 是一个用于 Chrome 浏览器自动化的插件,从自动填写表格、执行重复性任务、截屏、抓取网站数据等等,完全可以根据你自己的需求来决定如何使用。

突然知道了这个小玩意儿,还挺不错的,就玩一下,适合偏WEB自动化工作流的任务(爬虫等),还是挺方便的,这样就不用安装一个大的软件了。

插件下载安装

可以通过谷歌应用商城下载(Automa)

https://chrome.google.com/webstore/detail/automa/infppggnoaenmfagbfknfkancpbljcca?utm_source=chrome-ntp-icon

也可以通过源码构建的方式,直接加载到游览器

https://github.com/AutomaApp/automa/releases/tag/v1.15.1

加载插件完成后

点击就可以使用了

可以通过这个设置,来设置中文显示,这样看着就很方便了。


也可以配置一下箭头效果

还有其他界面可以自己多看看。

要实现的业务逻辑

总得搞个像样的操作,要不然,体现不出来效果。

实现的逻辑

  1. 触发条件为手动触发
  2. 触发后,新建一个游览器页签,然后打开抖音
  3. 把抖音显示的视频新标签页打开
  4. 同时把此视频下载到本地

流程图大致如下:

各个节点的示意

触发器的选项

我这里没有啥别的条件,我就选择了手动。但是,也可以选择上下文菜单,直接页面右键就可以了。

新建标签页

我这里选的是新打开一个,主要是为了方便测试。

当然,也可以选择活动标签页,也就是当前选择的页面来进行操作,这个节点必须得有。

获取页面的属性值

一个是获取属性值,一个是获取文本值。

这其实是两种概念。

如果 HTML是下图,那么,应该选文本值

如果 HTML是下图


那就是要获取sorce 里的 src 属性值

属性值配置信息

其中 获取video的地址,我这边是通过XPath获取的。

而属性值,就是上边说的src属性值需要填写的。

文本值

我这边统一用XPath,方便许多

如何用谷歌获取页面的XPath

可以通过谷歌游览器的快捷键F12 或者 右键 检查页面元素

就可以通过1的操作来选择页面上的位置,2的地方下边就会出现元素的范围。

然后,通过,选贼的元素,右键,复制XPath 或者 Full XPath 就可以获取得到了。

实现视频地址打开在另外一个页面

这个操作,我是通过新建标签页来的,需要注意的应该是这个变量。

https:{{variables@videoUrl}}

所以,变量的引用方式就是 {{ }} 里包含了 variables@变量名 就可以了

实现视频下载到本地(重命名为指定名称)

可以看到两个地方都用了变量名。

当前逻辑导出

可以直接保存为 XXX.json,然后,导入 Automa 工作流即可,甚是方便。

{"extVersion":"1.15.1","name":"抖音视频爬取","icon":"riGlobalLine","table":[],"version":"1.15.1","drawflow":{"nodes":[{"computedPosition":{"x":55,"y":138,"z":0},"data":{"disableBlock":false,"description":"","type":"manual","interval":60,"delay":5,"date":"","time":"00:00","url":"","shortcut":"","activeInInput":false,"isUrlRegex":false,"days":[],"contextMenuName":"自动快进和下一集","contextTypes":[],"observeElement":{"selector":"","baseSelector":"","matchPattern":"","targetOptions":{"subtree":false,"childList":true,"attributes":false,"attributeFilter":[],"characterData":false},"baseElOptions":{"subtree":false,"childList":true,"attributes":false,"attributeFilter":[],"characterData":false}}},"dimensions":{"width":192,"height":72},"handleBounds":{"source":[{"id":"lR7WNj21Qcz0R8vsWyRSQ-output-1","position":"right","x":196.000022148581,"y":27.999978124446006,"width":16,"height":16}]},"id":"lR7WNj21Qcz0R8vsWyRSQ","label":"trigger","position":{"x":55,"y":138},"selected":false,"type":"BlockBasic"},{"computedPosition":{"x":315,"y":135,"z":0},"data":{"active":true,"customUserAgent":false,"description":"","disableBlock":false,"inGroup":false,"updatePrevTab":false,"url":"https://www.douyin.com/","userAgent":"","waitTabLoaded":false},"dimensions":{"width":192,"height":72},"handleBounds":{"source":[{"id":"by31yqg-output-1","position":"right","x":196.000022148581,"y":28.0000131799378,"width":16,"height":16}],"target":[{"id":"by31yqg-input-1","position":"left","x":-19.999999398386485,"y":28.0000131799378,"width":16,"height":16}]},"id":"by31yqg","label":"new-tab","position":{"x":315,"y":135},"selected":false,"type":"BlockBasic"},{"computedPosition":{"x":645,"y":60,"z":0},"data":{"addExtraRow":false,"assignVariable":true,"attributeName":"src","dataColumn":"KGhha","description":"获取video的地址","disableBlock":false,"extraRowDataColumn":"","extraRowValue":"","findBy":"xpath","markEl":false,"multiple":false,"saveData":false,"selector":"/html/body/div[1]/div/div[2]/div[3]/div/div[1]/div[1]/div/div[1]/div/div/xg-video-container/video/source[3]","variableName":"videoUrl","waitForSelector":true,"waitSelectorTimeout":5000},"dimensions":{"width":192,"height":72},"handleBounds":{"source":[{"id":"wfktfdz-output-1","position":"right","x":196.000022148581,"y":28.0000131799378,"width":16,"height":16}],"target":[{"id":"wfktfdz-input-1","position":"left","x":-20.000069509370068,"y":28.0000131799378,"width":16,"height":16}]},"id":"wfktfdz","label":"attribute-value","position":{"x":645,"y":60},"selected":false,"type":"BlockBasic"},{"computedPosition":{"x":990,"y":75,"z":0},"data":{"active":true,"customUserAgent":false,"description":"打开获取的抖音视频,无水印","disableBlock":false,"inGroup":false,"updatePrevTab":false,"url":"https:{{variables@videoUrl}}","userAgent":"","waitTabLoaded":false},"dimensions":{"width":192,"height":72},"handleBounds":{"source":[{"id":"xbgtpyj-output-1","position":"right","x":196.000022148581,"y":28.0000131799378,"width":16,"height":16}],"target":[{"id":"xbgtpyj-input-1","position":"left","x":-19.999859176419324,"y":28.0000131799378,"width":16,"height":16}]},"id":"xbgtpyj","label":"new-tab","position":{"x":990,"y":75},"selected":false,"type":"BlockBasic"},{"computedPosition":{"x":990,"y":180,"z":0},"data":{"disableBlock":false,"description":"保存抖音视频到本地","findBy":"cssSelector","waitForSelector":false,"waitSelectorTimeout":5000,"selector":"","markEl":false,"multiple":false,"type":"url","url":"https:{{variables@videoUrl}}","filename":"{{variables@videoName}}.mp4","onConflict":"uniquify"},"dimensions":{"width":192,"height":72},"handleBounds":{"source":[{"id":"xv4nu27-output-1","position":"right","x":196.000022148581,"y":28.0000131799378,"width":16,"height":16}],"target":[{"id":"xv4nu27-input-1","position":"left","x":-19.999859176419324,"y":28.0000131799378,"width":16,"height":16}]},"id":"xv4nu27","label":"save-assets","position":{"x":990,"y":180},"selected":false,"type":"BlockBasic"},{"type":"BlockBasic","dimensions":{"width":192,"height":72},"handleBounds":{"source":[{"id":"1ouzb51-output-1","position":"right","x":196.000022148581,"y":28.0000131799378,"width":16,"height":16}],"target":[{"id":"1ouzb51-input-1","position":"left","x":-20.000069509370068,"y":28.0000131799378,"width":16,"height":16}]},"computedPosition":{"x":645,"y":165,"z":0},"position":{"x":645,"y":165},"label":"get-text","data":{"disableBlock":false,"description":"获取video的名称","findBy":"xpath","waitForSelector":true,"waitSelectorTimeout":5000,"selector":"/html/body/div[1]/div/div[2]/div[3]/div/div[1]/div[2]/div/div[1]/div/div/div[3]/div[1]/div[2]/div/div/span/span[1]/span/span/span","markEl":false,"multiple":false,"regex":"","prefixText":"","suffixText":"","regexExp":["g","g","g","g"],"dataColumn":"","saveData":false,"includeTags":false,"addExtraRow":false,"assignVariable":true,"variableName":"videoName","extraRowValue":"","extraRowDataColumn":""},"id":"1ouzb51","selected":false}],"edges":[{"id":"vueflow__edge-lR7WNj21Qcz0R8vsWyRSQlR7WNj21Qcz0R8vsWyRSQ-output-1-by31yqgby31yqg-input-1","class":"source-lR7WNj21Qcz0R8vsWyRSQ-output-1 target-by31yqg-input-1","markerEnd":"arrowclosed","selectable":true,"source":"lR7WNj21Qcz0R8vsWyRSQ","sourceHandle":"lR7WNj21Qcz0R8vsWyRSQ-output-1","sourceX":0,"sourceY":0,"target":"by31yqg","targetHandle":"by31yqg-input-1","targetX":0,"targetY":0,"type":"default","updatable":true,"z":0},{"id":"vueflow__edge-12fef6s12fef6s-output-1-wfktfdzwfktfdz-input-1","class":"source-12fef6s-output-1 target-wfktfdz-input-1","markerEnd":"arrowclosed","selectable":true,"selected":false,"source":"by31yqg","sourceHandle":"by31yqg-output-1","sourceX":0,"sourceY":0,"target":"wfktfdz","targetHandle":"wfktfdz-input-1","targetX":0,"targetY":0,"type":"default","updatable":true,"z":0},{"id":"vueflow__edge-wfktfdzwfktfdz-output-1-xv4nu27xv4nu27-input-1","class":"source-wfktfdz-output-1 target-xv4nu27-input-1","markerEnd":"arrowclosed","selectable":true,"selected":false,"source":"1ouzb51","sourceHandle":"1ouzb51-output-1","sourceX":0,"sourceY":0,"target":"xv4nu27","targetHandle":"xv4nu27-input-1","targetX":0,"targetY":0,"type":"default","updatable":true,"z":0},{"id":"vueflow__edge-b3wujz4b3wujz4-output-1-xbgtpyjxbgtpyj-input-1","class":"source-b3wujz4-output-1 target-xbgtpyj-input-1","markerEnd":"arrowclosed","selectable":true,"source":"1ouzb51","sourceHandle":"1ouzb51-output-1","sourceX":0,"sourceY":0,"target":"xbgtpyj","targetHandle":"xbgtpyj-input-1","targetX":0,"targetY":0,"type":"default","updatable":true,"z":0,"selected":false},{"id":"vueflow__edge-by31yqgby31yqg-output-1-1ouzb511ouzb51-input-1","source":"by31yqg","sourceHandle":"by31yqg-output-1","target":"1ouzb51","targetHandle":"1ouzb51-input-1","class":"source-by31yqg-output-1 target-1ouzb51-input-1","updatable":true,"selectable":true,"type":"default","markerEnd":"arrowclosed","z":0,"sourceX":0,"sourceY":0,"targetX":0,"targetY":0}],"position":[95.10493730397354,250.24916845541705],"zoom":0.8705505632961241},"settings":{"blockDelay":0,"debugMode":false,"defaultColumnName":"column","executedBlockOnWeb":false,"inputAutocomplete":true,"insertDefaultColumn":false,"notification":true,"onError":"stop-workflow","publicId":"","restartTimes":3,"reuseLastState":false,"saveLog":true,"tabLoadTimeout":30000},"globalData":"{\n\t\"key\": \"value\"\n}","description":"刷新当前抖音视频,获取视频地址","includedWorkflows":{}}

运行结果

总结

不得不说,曾经我就想用JS实现爬虫,这样才是最完美的方案,不曾想,几何时,大佬就已经完备了。

Automa 软件本身十分的优秀,有很多可能性,对于普通人来讲,有如神助!

文档参考地址

https://docs.automa.site/

一键三连呦!,感谢大佬的支持,您的支持就是我的动力!

RPA之Chrome插件(Automa)Web 工作流自动化相关推荐

  1. Chrome插件--MaoXian web clipper

    title: Chrome插件–MaoXian web clipper tags: Chrome插件 grammar_cjkRuby: true 这款插件干嘛的 这款插件功能之强大让人佩服,它可以捕获 ...

  2. Chrome插件--MaoXian web clipper-截取网页区域代码

    title: Chrome插件–MaoXian web clipper tags: Chrome插件 grammar_cjkRuby: true 这款插件干嘛的 这款插件功能之强大让人佩服,它可以捕获 ...

  3. 【chrome插件】web版微信接入图灵机器人API实现自动回复

    小贱鸡自动回复API已经不可以用了,现在改良接入图灵机器人API 360chrome浏览器团队翻译了部分谷歌插件开发文档 地址:http://open.chrome.360.cn/extension_ ...

  4. 低代码开发,推荐一款Web 端自动化神器:Automa!

    1. Automa介绍 又到了优秀工具推荐的时候了,今天给大家分享一款前端自动化操作神器: Automa. 首先了解一下Automa是什么?Automa它定位是一款 Chrome 插件,也就意味着,它 ...

  5. 低代码开发,推荐一款Web 端自动化神器:Automa

    1. Automa介绍 又到了优秀工具推荐的时候了,今天给大家分享一款前端自动化操作神器: Automa. 首先了解一下Automa是什么? Automa它定位是一款 Chrome 插件,也就意味着, ...

  6. 厉害了!推荐一个 Web 端自动化神器 - Automa

    来源:AirPython 1. 前言 大家好,我是安果! 之前推荐过很多优秀的 Web 自动化工具,比如:Selenium.Helium.Cypress.Pyppeteer 等 利用它们实现自动化的前 ...

  7. Web 端自动化神器Automa,批量下载美图,可做封面

    文章目录 Automa介绍 Automa安装 本文的目标 自动搜索 自定义数据下载 批量下载美女封面 实现的效果 品尝下载的美图 总结 参考 低代码 | 美图秀色可餐 | 可做封面 Automa介绍 ...

  8. 对Web设计和开发人员有用的15个Chrome插件

    导读:原文作者Brian在freelancefolder.com发表了一篇<15 Useful Google Chrome Extensions for Web Designers and De ...

  9. Web设计者和开发者必备的27个Chrome插件

    自Chrome推出以来,由于其极快的启动速度和页面加载速度.日益剧增的强大的插件以及简洁清新的界面,越来越受用户及开发者的欢迎,其市场占有率也在不断攀升,人们也相信,其取代IE.Firefox的地位也 ...

最新文章

  1. java 分布式 redis缓存技术_JAVA架构师系列课程分布式缓存技术Redis权威指南,资源教程下载...
  2. kafka配置参数详解
  3. SqlConnection中 Close()Dispose()Using()的区别
  4. C语言中能运算符重载吗,C++语言中什么运算符不能重载
  5. c++ 类的继承与派生
  6. 技巧:在 C/C++中如何构造通用的对象链表
  7. Flask简介与简单项目操作流程
  8. SpringBoot 计划任务
  9. Kaggle比赛(一)Titanic: Machine Learning from Disaster
  10. Java数据结构——顺序表
  11. 今天终于结束了考试,不知道结果
  12. .NET-MVC站点部署到windows server2008r2服务器404错误
  13. Cisco Packet Tracer---链路聚合简单配置
  14. Allegro Pad Designer焊盘制作指南
  15. Soul app产品分析报告
  16. hdoj 5651 xiaoxin juju needs help 【组合数学】
  17. MySQL中的文本处理函数整理,收藏速查
  18. 机器学习实战教程(三):决策树实战篇
  19. 迪杰斯特拉算法(邻接表求解)
  20. 两个实打实干活的同事离职了,老板连谈都没谈,一句挽留都没有,你怎么看

热门文章

  1. notification自定义铃声
  2. 关于二进制补码及补码加法的思考
  3. 【ESP8266 快速入门】硬件:ESP12S/ESP12F最小系统设计及typeC自动下载电路设计
  4. 浅谈外挂常识和如何防御
  5. [Paper Reading] Towards Conversational Recommendation over Multi-Type Dialogs
  6. 用meshio进行模型格式转换(obj.stl.vtk.vtu.svg……)
  7. 一次网络波动引发的事故!后端警醒!
  8. 史上最简单MYSQL教程详解(基础篇)之初识MySQL数据库以及环境配置
  9. Libra (介绍) 建立一个简单的全球货币和金融基础 (1)
  10. C++开发斗地主(QT)第二篇之牌的绘制与显示