基于uibot知网文论采集机器人设计与实现

news2025/1/20 1:04:18

摘要

人工智能技术的不断更新迭代为财务数据自动化处理带来了新的机遇和挑战,如何通过人工智能等新兴技术来优化现有的财务流程, 创造更多的企业价值,成为财务信息自动化处理是目前的重点研究方向。机器人流 程自动化作为一种新型的自动化技术,能够实现业务流程的自动化, 提升财务共享的效率,在财务共享中心向数字化转型的过程中发挥着 重要的推动作用,而如何对机器人流程自动化的应用效果进行评价对 企业而言也是十分重要。

本次以UiBot平台进行知网论文自动化下载机器人设计来了解并学习人工智能技术

目录

1 背景. 3

1.1 UIBot介绍. 3

1.2 研究背景. 3

1.3 研究意义. 3

2 机器人设计. 3

2.1 设计要求. 3

2.2 设计思路. 4

2.3 设计流程图. 4

3 论文下载机器人实现. 5

3.1 机器人实现. 5

3.2 实现代码. 5

3.3 机器人测试. 7

4 分析总结. 8

4.1 设计过程遇到的问题. 8

4.2  财务机器人的实际应用. 8

4.3 总结. 9

1 背景

1.1 UIBot介绍

UiBot是一家机器人流程自动化服务平台,其产品包含创造者、劳动者、指挥官三大模,用户可通过平台一键录制流程并自动生成机器人,支持可视化编程与专业模式、浏览器、桌面、SAP等多种控件抓取以及C、Lua、Python、.Net 扩展插件及第三方SDK接入,还可对业务与权限进行实时监控调整。异行星低代码平台

1.2 研究背景

随着大数据时代的到来,越来越多的领域在智能化背景下得到不断的 优化提升,业务流程逐渐实现标准化与自动化。不仅可以利用财务共享中心实现 统一核算,也能够通过数智化转型优化财务信息系统,实现各类信息系统的集成, 助力企业管理模式的创新。机器人流程自动化(Robotic Process Automation,简称:RPA)是通过执行编 写的脚本,来减少人力工作,实现流程自动化的软件。RPA 的应用可以实现业 务流程自动化。德勤会计师事务所在 2017 年推出的财务机器人及流程自动化解 决方案标志着我国机器人流程自动化应用的开始,企业逐渐开始利用信息技术解 决问题并优化业务流程,与此同时降低企业财务管理成本。

1.3 研究意义

国外对于RPA的研究起源更早,已形成了相对完善RPA应用生态环境。相对于我国关于RPA软件流程机器人研究实际和应用时间比较短,通过对国内外文献进行研 究分析发现,关于RPA的研究及将RPA进行实际的业务场景应用的案例研究很多,大多聚焦 于利用财务共享对企业财务管理进行改革,但是将 RPA 与财务共享服务相结合 的研究相对欠缺,对 RPA 在财务共享中心的应用效果评价体系研究领域基本空白。因此本文在学习使用UiBot机器人如何进行可视化机器人开发的同时,并进行与知网文献自动化下载机器人进行实践操作。加强对UiBot的立即并加深RPA技术在财务机器人领域的应用。

2 机器人设计

2.1 设计要求

  1. 使用UiBot平台设计一个机器人,能够实现批量下载知网指定关键词或者指定主题的文献,一次最少下载5篇。
  2. 指定期刊下载:指定财会月刊、财会通讯和会计之友三大期刊。

2.2 设计思路

为了实现批量下载知网指定关键词或指定主题的文献,并一次下载至少5篇文献的功能,我们可以使用Uibot来设计一个机器人。首先,我们需要了解中国知网(CNKI)的网站结构和文献下载规则。然后,我们可以利用Uibot的浏览器功能模拟人工操作,自动搜索、筛选并下载符合要求的文献。

具体步骤如下:

连接知网:使用Uibot的浏览器功能,模拟人工操作打开中国知网(CNKI)的网站。

输入关键词或主题:在搜索框中输入需要搜索的关键词或主题,以获取相关的文献搜索结果。

搜索文献:点击搜索按钮,获取与关键词或主题相关的文献搜索结果。

筛选文献:根据设定的筛选条件,从搜索结果中筛选出符合要求的文献。可以按照相关性、发表时间、被引次数等指标进行筛选。

下载文献:对于符合要求的每一篇文献,使用Uibot的下载功能,自动下载它们的PDF格式。可以设置每次操作至少下载5篇文献。

整理和存储文献:将下载的文献进行整理和分类,以便后续的分析和处理。可以将它们按照标题、作者、出版日期等属性进行存储。

可视化和报告生成:通过Uibot的可视化功能,将下载的文献进行展示和报告生成。可以包括对下载文献的概括和分析等内容。

2.3 设计流程图

descript

3 论文下载机器人实现

3.1 机器人实现

使用uibot控制浏览器进行元素定位检索关键词来源进行排序下载

3.2 实现代码

Dim hWeb,iRet,bRet

hWeb = WebBrowser.Create("uibotbrowser","about:blank",30000,{"bContinueOnError":false,"iDelayAfter":300,"iDelayBefore":200,"sBrowserPath":"","sStartArgs":""})

iRet = WebBrowser.GoURL(hWeb,"https://www.cnki.net/",true,{},30000,{"bContinueOnError":false,"iDelayAfter":300,"iDelayBefore":200})

Delay(9000)

Mouse.Action(@ui"链接<a>_高级检索3","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(9000)

Mouse.Action(@ui"输入控件<input>14","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Keyboard.InputText(@ui"输入控件<input>14","财务",true,20,10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 500, "bSetForeground": true, "sSimulate": "message", "bValidate": false, "bClickBeforeInput": false})

Mouse.Action(@ui"输入控件<input>15","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Keyboard.InputText(@ui"输入控件<input>15","财会月刊",true,20,10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 500, "bSetForeground": true, "sSimulate": "message", "bValidate": false, "bClickBeforeInput": false})

Mouse.Action(@ui"按钮<buttoninput>_检索2","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Mouse.Action(@ui"列表项<li>_发表时间","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(1000)

Mouse.Action(@ui"列表项<li>_下载","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(9000)

Mouse.Action(@ui"文本<i>2","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(1000)

Mouse.Action(@ui"文本<i>8","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(1000)

Mouse.Action(@ui"文本<i>4","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(1000)

Mouse.Action(@ui"文本<i>5","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(1000)

Mouse.Action(@ui"文本<i>6","left","click",10000,{"bContinueOnError": false, "iDelayAfter": 300, "iDelayBefore": 200, "bSetForeground": true, "sCursorPosition": "Center", "iCursorOffsetX": 0, "iCursorOffsetY": 0, "sKeyModifiers": [],"sSimulate": "simulate", "bMoveSmoothly": false})

Delay(9000)

Delay(9999000)

3.3 机器人测试

打开UiBot creator软件,进入机器人测试界面。

选择要测试的机器人项目,并点击“运行”按钮。

在运行界面中,可以选择要运行的测试用例和测试场景,并设置相关的参数和配置。

点击“开始”按钮,机器人将按照预设的脚本执行测试操作。

在测试过程中,可以实时查看测试结果和日志,了解机器人是否正常工作,以及是否出现了预期的输出结果。

4 分析总结

4.1 设计过程遇到的问题

  1. 元素定位问题:
  1. 元素定位失败:有时候,UiBot无法准确地找到要操作的元素,这可能是由于元素的位置、名称、ID等属性发生了变化。
  2. 元素定位不稳定:有时候,同一个元素在不同时间或不同环境中定位结果不稳定,时好时坏。
  3. 元素定位方法不适用:有时候,使用某种定位方法无法找到元素,需要尝试其他定位方法。
  1. 等待问题:
  1. 等待时间设置不合理:在UiBot中,需要设置适当的等待时间来等待页面加载或元素显示。如果等待时间设置得过短,可能会导致机器人操作太快,页面还未完全加载就进行了操作。如果等待时间设置得过长,则会导致测试过程缓慢。
  2. 等待条件设置不合理:在等待过程中,需要设置合适的等待条件来判断页面是否已经加载完成或元素是否已经显示。如果等待条件设置得不合理,可能会导致机器人误判或长时间等待。
  3. 等待策略不适用:在某些情况下,需要使用不同的等待策略来处理不同的页面或元素加载情况。如果使用不合适的等待策略,可能会影响测试的准确性和效率
    1. 财务机器人的实际应用

1、发票汇总验真:财务人员需要将大量发票中的代码、发票号、金额、开票日期等信息录入Excel表格中,并登录增值税发票查验平台,逐条录入发票验证信息。这个过程耗时且易出错。UiBot财务机器人可以代替人工自动完成这些操作,提高效率和准确性。

2、财务报告生成和分析:该机器人可以用于生成和分析财务报告。通过自动化处理报告中的数据和信息,可以更快地了解公司的财务状况和经营业绩。此外,还可以进行趋势分析和预测,为决策提供支持。

3、自动化审计:在财务审计过程中,该机器人可以帮助自动化一些常规的审计流程,例如数据比对、报表生成等。这可以提高审计效率和准确性。

4.3 总结

1、元素定位

在UI自动化测试中,元素定位是非常重要的技术之一。它可以帮助我们找到页面上的元素,并对其进行操作。在uibot中,可以使用XPath或CSS选择器来进行元素定位。

    使用XPath定位元素

XPath是一种在XML文档中查找信息的语言,它可以用来在HTML或XML页面中查找元素。在uibot中,可以使用XPath来定位元素。例如,要定位一个id为“myId”的元素,可以使用以下代码:

driver.find_element_by_xpath("//*[@id='myId']")

    使用CSS选择器定位元素

CSS选择器是一种通过样式表来选择HTML元素的方法。在uibot中,可以使用CSS选择器来定位元素。例如,要定位一个class为“myClass”的元素,可以使用以下代码:

driver.find_element_by_css_selector(".myClass")

无论是使用XPath还是CSS选择器,都需要确保元素的属性值是唯一的,否则可能会出现定位不准确的情况。此外,还可以使用uibot提供的智能等待功能来等待页面加载完成,提高元素定位的准确性和稳定性。

2、开发测试流程总结

uibot机器人的开发测试流程主要包括以下几个步骤:

    需求分析:明确测试目标和测试需求,确定需要测试的功能和场景。这个阶段需要对被测系统进行深入的了解和分析,包括系统的功能、架构、业务流程等。同时还需要考虑测试的范围、测试的优先级以及测试的策略等。

    环境搭建:在开始编写测试用例之前,需要先搭建测试环境。测试环境应该与实际的生产环境保持一致,包括操作系统、浏览器、应用程序等。同时还需要安装uibot软件和相关依赖库,配置测试数据和测试场景等。

    编写测试用例:根据需求分析的结果,编写测试用例和场景。测试用例应该覆盖所有的测试需求和场景,包括正常情况和异常情况。同时还需要考虑测试的数据、测试的步骤、预期的结果等。编写测试用例的过程应该遵循良好的编程习惯和规范,提高代码的可读性和可维护性。

    运行测试用例:在编写完测试用例之后,需要运行测试用例并收集测试结果。测试结果应该包括通过率、失败原因、日志等信息。如果测试失败,需要进行调试和优化,直到测试通过为止。同时还需要对测试结果进行分析和总结,发现和改进潜在的问题和风险。

    调试和优化:在测试过程中,可能会出现一些异常情况和错误,需要进行调试和优化。调试可以通过添加日志、断点等方式来进行,优化则可以通过修改代码、调整配置、增加数据处理等方式来进行。同时还需要对测试过程进行监控和管理,保证测试的准确性和稳定性。

    发布和维护:在完成测试之后,可以将测试通过的机器人发布到生产环境中。同时还需要对机器人进行定期的维护和更新,保证机器人的稳定性和可靠性。同时还需要对机器人的文档进行维护和管理,包括使用说明、配置说明等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1344802.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Shell三剑客:awk(awk编辑编程)六

一、AWK 的函数前言 awk的函数有许多&#xff0c;除了系统自带的内建函数还有就是用户自定义的函数。 二、AWK 常用的函数 rand() # 返回0 和1 之间一个随机数srand() # 生成随机数种子int() # 取整数length([s]) # 返回指定字符串的长度sub(r,s,[t]) # 对t字符串进行搜索&am…

攻防世界easyphp解题

攻防世界easyphp解题 <?php highlight_file(__FILE__); $key1 0; $key2 0;$a $_GET[a]; $b $_GET[b];if(isset($a) && intval($a) > 6000000 && strlen($a) < 3){if(isset($b) && 8b184b substr(md5($b),-6,6)){$key1 1;}else{die(&q…

PAT 乙级 1039 到底买不买

解题思路:此题用c语言的话可以直接hash去求比较简单&#xff0c;首先求出各个颜色的个数&#xff0c;一比对就可以了&#xff0c;python我利用了字典和集合 c语言代码: #include<stdio.h> int main() {char a[1001],b[1001];int surplus0,miss0;int a_c[128]{0};int b_…

【HarmonyOs Arkts笔记】Arkts ForEach循环使用

说明 ForEach循环数组对象时 要指定对象的唯一标识 例如 id&#xff0c;否则只会显示第一个 State tabsList: object[] [{ name: 砍价活动, id: 1, icon: https://php-b2c.likeshop.cn/uploads/images/2022062414322367e6a5479.png },{ name: 拼团活动, id: 2, icon: https:…

GBASE南大通用-GBase 8s分片表操作 提升大数据处理性能

目录 一、GBase 8s分片表的优势 二、六种分片方法 轮转 1.轮转法 基于表达式分片 2.基本表达式 3.Mod运算表达式 4.Remainder关键字方式 5.List方式 6.interval 固定间隔 三、分片表的索引 1.创建索引的注意事项 2.detach索引替代delete功能展现 3.在现有分片表上增加一个新…

二叉树顺序结构与堆的概念及性质(c语言实现堆)

上次介绍了树&#xff0c;二叉树的基本概念结构及性质&#xff1a;二叉树数据结构&#xff1a;深入了解二叉树的概念、特性与结构 今天带来的是&#xff1a;二叉树顺序结构与堆的概念及性质&#xff0c;还会用c语言来实现堆 文章目录 1. 二叉树的顺序结构2.堆的概念和结构3.堆…

高光回眸:阿里云容器服务如何全面助力精彩亚运

作者&#xff1a;刘佳旭 谢乘胜 贤维 引言 2023 年&#xff0c;第 19 届杭州亚运会在杭州成功举办。在亚运之光和科技之光的交相辉映下&#xff0c;这届亚运会成为亚运史上首届“云上亚运”&#xff0c;用云计算创造了历史&#xff0c;赛事核心系统和转播全面上云&#xff0c…

leetcode贪心算法题总结(三)

本章目录 1.合并区间2.无重叠区间3.用最少数量的箭引爆气球4.整数替换5.俄罗斯套娃信封问题6.可被三整除的最大和7.距离相等的条形码8.重构字符串 1.合并区间 合并区间 class Solution { public:vector<vector<int>> merge(vector<vector<int>>&…

图像的颜色及Halcon颜色空间转换transfrom_rgb/trans_to_rgb/create_color_trans lut

图像的颜色及Halcon颜色空间转换 文章目录 图像的颜色及Halcon颜色空间转换一. 图像的色彩空间1. RGB颜色 2. 灰度图像3. HSV/ HSI二. Bayer 图像三. 颜色空间的转换1. trans_from_rgb算子2. trans_to_rgb算子3. create_color_trans_lut算子 图像的颜色能真实地反映人眼所见的真…

地震烈度速报与预警工程成功案例的经验分享 | TDengine 技术培训班第一期成功落地

近日&#xff0c;涛思数据在成都开设了“国家地震烈度速报与预警工程数据库 TDengine、消息中间件 TMQ 技术培训班”&#xff0c;这次培训活动共分为三期&#xff0c;而本次活动是第一期。其目标是帮助参与者深入了解 TDengine 和 TMQ 的技术特点和应用场景&#xff0c;并学习如…

Github 2023-12-30 开源项目日报 Top10

根据Github Trendings的统计&#xff0c;今日(2023-12-30统计)共有10个项目上榜。根据开发语言中项目的数量&#xff0c;汇总情况如下&#xff1a; 开发语言项目数量TypeScript项目4JavaScript项目2C项目1Python项目1Java项目1HTML项目1Dart项目1非开发语言项目1 令人惊叹的 …

(001)Unit 编译 UTF8JSON

文章目录 编译 Dll编译报错附录 编译 Dll 新建工程&#xff1a; 注意 UnityEngineDll 的选择&#xff01;2022 版本的太高了&#xff01;&#xff01;&#xff01; 下载包&#xff0c;导入unity : 3. 将 unf8json 的源码拷贝到新建的工程。 4. 编译发布版本&#xff1a; 编译…

浅层神经网络时间序列预测和建模

目录 时间序列网络 NARX 网络 NAR 网络 非线性输入-输出网络 定义问题 使用神经网络时间序列拟合时间序列数据 使用命令行函数拟合时间序列数据 选择数据 选择训练算法 创建网络 准备要训练的数据 划分数据 训练网络 测试网络 查看网络 分析结果 闭环网络 向…

数据的复制

基本概念 数据的复制指的是通过网络链接的多台机器保留相同的副本 为什么要进行数据的复制 使得用户和数据在地理上比较接近&#xff0c;因为大数据要求我们将计算安排在数据存放的位置和我们基本的内存模型不是很一样 &#xff0c;比如磁盘调入内存之类的。即使系统的一部分…

XTU-OJ-1452-完全平方数-笔记

参考博客 XTU-OJ 1452-完全平方数 题意 输入一个奇数&#xff0c;使得 n*(2*an-1)/2是一个完全平方数&#xff0c;求满足条件的最小的a 1<n<1e9 先输入样例数&#xff0c;再输入n 输入 2 1 3 输出 0 2 代码 #include<stdio.h>#define N 1000000010int a…

C#多条件排序OrderBy、ThenBy

方法和效果 有多个排序条件&#xff0c;其实不用单独自己写排序方法的&#xff0c;C#内置了排序方法&#xff1a; 引用命名空间System.Linq 正向排序的方法&#xff1a;OrderBy首要条件&#xff1b;ThenBy次要条件&#xff0c;可以连续多个使用 同理&#xff0c;逆向排序对应…

three.js绘制网波浪

无图不欢&#xff0c;先上图 使用方法&#xff08;以vue3为例&#xff09; <template><div class"net" ref"net"></div> </template><script setup> import { ref, onMounted } from vue import NetAnimation from /util…

面向搜索引擎优化初学者的 Google PageRank

即使你认为搜索已经摆脱了 PageRank 的影响&#xff0c;但时至今日&#xff0c;PageRank 很可能仍然存在于许多搜索巨头的系统中。 PageRank 曾经是搜索的核心&#xff0c;也是谷歌成为今天这个帝国的基础。 即使你认为搜索已经脱离了 PageRank&#xff0c;但不可否认的是&am…

阶段性复习(三)

if后面是赋值符&#xff0c;所以最后的值是a for&#xff08;&#xff1b; &#xff1b;&#xff09;是死循环 大小写转换 在这道题中&#xff0c;通过分析可知&#xff0c;在小写转换大写的过程中&#xff0c;需要满足的条件是word0&#xff0c;同时是小写&#xff0c;而在第…

Oracle 19c OCP 1z0 082考场真题解析第17题

考试科目&#xff1a;1Z0-082 考试题量&#xff1a;90 通过分数&#xff1a;60% 考试时间&#xff1a;150min 本文为云贝教育郭一军guoyJoe原创&#xff0c;请尊重知识产权&#xff0c;转发请注明出处&#xff0c;不接受任何抄袭、演绎和未经注明出处的转载。 17. Which three …