网页flash文本抓取器 解决方案:Flash ActionScript 3
优采云 发布时间: 2022-09-22 00:15网页flash文本抓取器 解决方案:Flash ActionScript 3
《Flash ActionScript3.0 全站交互设计》从ActionScript3.0的基本语法出发,重点介绍Flash网站的常用功能模块和交互元素,解释 ActionScript 3.0。 @3.0在交互网站中的应用,包括音乐播放器、视频播放器、下拉菜单、滚动条、图片轮播、网页相册、浮动导航、XML可折叠菜单、数据过滤、新闻展示、RSS阅读器和3D旋转logo等,并选择两个完整的网站,分析整个网站的交互设计细节,让读者从新手变成网站交互设计大师。 《Flash ActionScript 3.0 全站交互设计》光盘收录ActionScript 3.0 完整实用的视频手册,弥补了本书篇幅有限,全面讲解ActionScript 3.0 应用方法和技术,更新了本书所有案例*敏*感*词*的收录教学视频,帮助读者更好地理解和掌握关键技术。
解决方案:Node.js开发RPA-自动抓取网页的文字内容
背景
RPA 工作流程中最常见的场景是操作浏览器并对页面内容进行相关操作。本例以页面为例。它将带领您探索如何使用RPA工具自动抓取页面的文本内容。
本文将使用 JavaScript 语言开发 RPA 脚本。这里使用的 RPA 工具 LeanRunner 可以直接从 Windows 应用商店下载。它可以支持使用node.js的开源自动化库进行RPA开发。用户可以按照以下步骤一步步实现自己的RPA脚本。
操作步骤
新项目
打开LeanRunner,选择【项目】--【新建】--【选择基本项目模板】,输入项目名称:demo,选择项目路径:
安装依赖库
selenium-webdriver 是一个流行的网络自动化库。 chromedriver 库可用于驱动 Chrome 自动化各种网页。当然,文本提取不是问题。本 RPA 使用这两个库来实现功能。所以创建项目后,需要安装相应的库。
单击 LeanRunner 打开命令行工具按钮
,执行安装命令:
npm init -ynpm install chromedriver selenium-webdriver @types/selenium-webdriver --save
<br />
注意:npm作为node.js的包管理机制,需要安装node.js环境才能使用
(下载链接:)
定义流程步骤
定义流程步骤以使自动化流程可读。
一个。打开main.js,在【工具箱】-【框架】中找到stepGroup方法,拖拽到js文件中。
b.在弹出的对话框中输入描述文字:抓取网页的文字内容,点击插入代码。
c。此时main.js的文件内容:
const { stepGroup } = require('leanrunner');<br />async function main() { await stepGroup("抓取网页文本内容", async () => { })}
d。继续拖动【工具箱】--【框架】中的step方法来描述文字输入:用Chrome浏览器打开网站:
e。按照上述步骤再次插入“抓取文本”和“关闭浏览器”步骤定义。
main.js如下:
const { step } = require('leanrunner');const { stepGroup } = require('leanrunner');<br />async function main() { await stepGroup("抓取网页文本内容", async () => { await step("使用Chrome浏览器打开要抓取的网站", async (world) => { }) await step("抓取文本", async (world) => { }) await step("关闭浏览器", async (world) => { }) })}
<br />
f。插入Workflow.run函数,RPA执行最终会被执行,在[Toolbox]-[Framework]中选择Workrun.run()函数:
g.在运行函数中输入“main”:
最终代码为:
const { Workflow } = require('leanrunner');const { step } = require('leanrunner');const { stepGroup } = require('leanrunner');<br />async function main() { await stepGroup("抓取网页文本内容", async () => { await step("使用Chrome浏览器打开要抓取的网站", async (world) => { }) await step("抓取文本", async (world) => { }) await step("关闭浏览器", async (world) => { }) })}<br />Workflow.run(main);
<br />
实施步骤
参考 selenium-webdriver API
()。分别执行以上步骤:
一个。使用Chrome打开网站进行抓取:
const WebDriver = require('selenium-webdriver');let driver = new WebDriver.Builder().forBrowser('chrome').build();const url = 'http://wufazhuce.com/one/2558';await driver.get(url);
上面的代码创建了一个 WebDriver 实例,打开一个浏览器窗口,并导航到目标 url。
b.抓住文字:
let text = await driver.findElement({ css:'div[class="one-cita"]'}).getText();console.log(text);
以上代码使用 CSS 选择器定位要访问的元素并打印输出。
c。关闭浏览器
await driver.close();
<br />
最终实现代码如下:
const { Workflow } = require('leanrunner');const { step } = require('leanrunner');const { stepGroup } = require('leanrunner');require('chromedriver');const WebDriver = require('selenium-webdriver');let driver = new WebDriver.Builder().forBrowser('chrome').build();<br />async function main() { await stepGroup("抓取网页文本内容", async () => { await step("使用Chrome浏览器打开要抓取的网站", async (world) => { const url = 'http://wufazhuce.com/one/2558'; await driver.get(url); }) await step("抓取文本", async (world) => { let text = await driver.findElement({ css:'div[class="one-cita"]'}).getText(); console.log(text); world.attachText(text); }) await step("关闭浏览器", async (world) => { await driver.close() }) })}<br />Workflow.run(main);
<br />
执行
点击“运行”按钮
,或点击“运行项目”按钮
可以看到浏览器打开网页,在LeanRunner设计器的输出面板中打印出文本内容。
如果是正在运行的项目,也会显示html运行报告:
html 报告对用户来说更具可读性。
总结
至此,我们已经完成了一个操作基本网页的 RPA。后续操作可以在此RPA的基础上进一步深化,例如将抓取的文本内容存储在Excel表格中,或者存储在数据库中。
本文使用的selenium-webdriver自动化库是一个非常流行的开源库,支持各类浏览器,可以及时更新支持最新版本的浏览器。 Node.js 也是一个非常流行的开源平台。基于此类技术的RPA自动化脚本的开发保持了RPA脚本的可用性和可维护性。结合LeanRunner RPA平台,可以帮助企业快速打造属于自己的流程自动化。