(16)UiBot:智能化软件机器人(以头歌抓取课程数据为例)

RPA自动化办公05——Uibot自动抓取网页数据 Uibot抓取网页数据,六个流程,简单快速上手 阅读详情
AI摘要

本文介绍使用UiBot自动化平台抓取实训项目数据的过程,包括全局变量设置、页面登录、Excel操作、数据抓取及异常处理等内容。

一、 实验平台——UiBot

官网下载链接:https://www.uibot.com.cn/

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

UiBot产品主要包含创造者、劳动者、指挥官、魔法师四大模块,为机器人的生产、执行、分配、智能化提供相应的工具和平台。

  • Creator

创造者即机器人开发工具,用于搭建流程自动化机器人。

  • Worker

劳动者即机器人运行工具,用于运行搭建好的机器人。

  • Commander

指挥官即控制中心,用于部署与管理多个机器人。

  • Mage

魔法师即AI能力平台,为机器人提供执行流程自动化所需的各种AI能力。

二、 项目功能与实现

1、项目介绍

完整的项目资源已经上传,可以到 https://download.youkuaiyun.com/download/Netceor/90187087 下载

机器人的主要目标是在头歌页面上自动获取学生实训提交情况,并分别对完成情况进行标记和统计。

机器人将打开头歌页面,点击我的头像查看课程,进入到《XX课程》。点击进入已截止的实训项目,我的账号可查看到各位同学的实训通关情况。

为了实现对项目列表进行遍历,机器人在已截止页面抓取所有项目名称,由于页面过长无法智能识别并抓取,且提取的数据无法直接转换为字符串。因此,将所有实训项目写入Excel后再读出,在网页搜索栏中依次进行搜索,以遍历所有实训。

在实训详情中将爬取所有同学的提交信息,输出到Excel表格中。一般而言,学生在实训项目截至后应当按时通关,对于异常提交情况,如迟交通关、未通关、未开启,在Excel中用不同颜色高亮展示,处理过程保留各种异常情况的学生数。

最后,将统计结果写入Excel单元格,抓住未做作业的那一批同学。

image-20220921162027322

​ 最后形成的Excel效果如图所示。

image-20220921162119583

image-20220921162214028

2、 项目流程

(1) 全局变量设置

为了实现在流程图中的数据共享,本项目设置了如下的流程图变量,即全局变量。在运行完整项目时将创建并共享。关于全局变量的设置,可以参考报告中的问题解决-全局变量板块。

  • hWeb:标识机器人所打开的页面。在启动浏览器时产生,通过hWeb实现打开、关闭、切换浏览器及其标签页。

  • TrainName:实训名称,string型。记录所有已截止的实训项目的名称,采用数据抓取的方式获得。

  • TrainNum:实训个数,int型。即TrainName的长度,表示共有多少个已截止的实训需要进行数据采集。

  • ExcelProject:Excel表,用于记录所有实训名。由于抓取到的实训名称无法直接转为字符串,通过Excel表转换,并实现在搜索框中依次搜索内容。

  • Name:代表当前遍历到的实训名称,string型。从ExcelProject中依次获取,以作为搜索框中的输入。

  • CurProject:标记当前遍历到第几个实训,int型。在每次进入流程循环时+1,作为从ExcelProject获取Name的下标。

  • TrainInfo:学生们作业提交的表格信息。从每个实训的作业列表中由数据抓取得到。

  • ExcelProject:Excel表,用于记录所有实训详情。抓取到

UiBot RPA中级实施工程师实践题.rar 含部分答案 立即下载

相关推荐

UiBot中级考试实践题

UiBot中级考试实践题答案,打开网站,查询长沙到北京第二天的票,把数据抓下来保存到res目录下的excel,然后打开excel弹窗输入要购买编号为哪个的票,输入没有的编号就继续弹窗,输入对了就返回那个编号的航班、时间、价格

uibot初级实践题,发送邮件。

uibot初级考试,发送邮件。 登录新浪邮箱、获取excel数据、发送邮件。 ps:邮箱需要预先注册号,需要设置邮箱安全,使用Google Chrome登录,否则会需要验证码。 仅供学习使用,如有侵权,立删!!

uibot 中级考试实践题----订单管理系统

2022年9月10号 最新uibot中级考试实践题目 第一个是用订单管理系统,第二个是验证码验证(这个有点难,

Uibot中级认证实践考试亲测代码-注册信息录入.rar

中级实践考试题-注册信息录入,本题主要实现将用户信息从Excel表格中自动录入到注册系统中,并在系统异常时重新尝试录入,具体步骤如下: 1、请打开UiBot Creator,创建名为“注册信息录入”的流程,流程位置为系统默认 2、手动下载用户信息表格用户信息.xlsx ,保存到上一步创建的流程目录下的res文件夹内。 里边有涉及到内网地址,做了一些调整并说明,里面包含模拟流程代码和实际考试通过代码,详情见资源内容。 中级考试有时间限制,试题也有一定的难度,请好好学习把题吃透。 下载的朋友可以免费咨询相关问题

Uibot中级认证实战总结,亲测满分,附源码以及部分场景图片

RPA Uibot来也认证实战总结 主要题目: 1.用户信息录入 2.动态标签输入框 3.数据表处理 4.下拉列表框操作 5.网页表 附赠: 1、火车票认证 2、下载邮件群发 3、预订机票 4、其他实践源码以及截图 有相关任何问题可私聊,无偿解答!

uibot中级认证考试实践题(亲测通过)-CS端下拉菜单选择.rar

CS端下拉菜单选择 请使用UiBot进行如下操作: 1、 请打开UiBot Creator,并创建名为“CS端下拉菜单选择”的流程,项目位置为系统默认 2、 请用UiBot Creator 打开“C:\客户端\CS下拉菜单选择\Exam.exe”软件; 3、 请用UiBot Creator命令选择该软件的下拉菜单为“⑤年度报表”的选项,选择成功后界面下方的“当前选择项为:”会显示 :⑤年度报表 请注意: 1、不能使用“设置元素选择”、“设置元素文本”、“在目标元素中输入文本”命令; 2、每次打开这个客户端,在下拉菜单的选项里面,除了“请选择”这个选项永远固定在第一个,其余的选项都是随机排序的,所以需要关闭软件后再重新打开进行多次测试,以确保每次选择结果正确。

WRF中使用ERA5再分析数据

   本人在做一些实例时,需要用到最新的ERA5再分析数据集,其中我下载的是ERA5 hourly data on pressure levels form 1979 to present和ERA5 hourly data on single levels from 1979 to present中的3天数据。 1、注册climate copernicus账号 下载ERA5数据前先要注册其账号 2、选择变量    WRF中对于气象数据的字段有具体的要求, ......

GIS 8166

Qt开发实战:QWebEngineView缓存路径详解与自定义配置(Windows/Linux)

本文详细解析了Qt框架中QWebEngineView组件的缓存机制,提供了Windows和Linux系统下的默认缓存路径及自定义配置方案。通过实战代码示例,展示了如何实现跨平台缓存路径管理、权限设置以及企业级应用中的多用户隔离策略,帮助开发者有效管理Web内容缓存,提升应用性能和数据安全性。

weixin_42519826的博客 403

AI算力瓶颈与系统优化实战指南

AI算力瓶颈已成为制约人工智能发展的关键因素,特别是在处理transformer类模型时,传统的冯·诺依曼架构面临严重的'内存墙'问题。通过硬件加速、系统优化和算法改进的三级策略,可以有效提升资源利用率。在嵌入式AI领域,结合量化、剪枝和专用指令集扩展等技术,能在资源受限设备上实现高效推理。这些优化方法在自动驾驶、工业视觉等场景中已展现出显著价值,推动AI应用从云端向边缘迁移。随着AI算力需求的持续增长,掌握系统优化技能将成为开发者的核心竞争力。

weixin_32597009的博客 339

神州数码防火墙(DCN)NAT SSL-VPN配置

SSL-VPN是基于应用层的VPN,采用SSL协议来实现远程接入的一种新型VPN技术,比L2TP更加灵活的VPN方案。是天然的安全远程接入方案。用户可以通过浏览器的HTTPSs登录VPN的网址。SSL-VPN的认证方式包括LDAP,radius,CA,USB Key等方式。 SSL VPN的主要应用场景是保证远程用户能够在企业外部安全\高效的访问企业内部的网络资源

qq_50966485的博客 4553

Ubuntu22.04上如何用Docker一键部署Ragflow+Ollama(附CUDA配置避坑指南)

本文详细介绍了在Ubuntu22.04系统上使用Docker一键部署Ragflow+Ollama的完整流程,特别提供了CUDA配置的避坑指南。从硬件兼容性检查、驱动安装到容器网络配置,手把手教你搭建本地化大模型环境,解决CUDA驱动冲突等常见问题,助力开发者快速构建AI应用开发平台。

weixin_26875109的博客 283

深度强化学习训练结果曲线绘制教程

使用python语言,只调用matplotlib库,绘制训练过程中保存的强化学习训练曲线。模仿经典论文中的训练曲线,多次训练取平均,并绘制出阴影区域。

加斯顿工程师的博客 910

STEP 7-Micro/WIN SMART 编程软件:从入门到精通的使用指南

通过不断实践,熟悉软件的各项功能和操作技巧,工程师可更好地应对工业自动化控制中的各种挑战,开发出高效、稳定的控制程序。项目的基本组件是构成程序的核心元素,包括:程序块(主程序 OB1、子程序和中断程序)、数据块(给 V 存储器赋初值)、系统块(硬件组态和参数设置)、符号表(用符号代替存储器地址,使程序更易理解)以及状态图表(监视、修改和强制变量状态)。下载程序时,单击工具栏上的 “下载” 按钮,在弹出的下载对话框中选择要下载的块(程序块、数据块、系统块),单击 “下载” 即可。

电工 5569

Yield Management软件:Lam Research二次开发_(5).缺陷分析与分类方法

在半导体制造过程中,缺陷分析和分类是提高良率管理(Yield Management)的关键步骤。通过准确地识别和分类缺陷,可以更好地理解工艺过程中的问题,从而采取有效的措施来提高生产效率和产品质量。本节将详细介绍缺陷分析和分类的方法,包括缺陷检测、特征提取、分类算法及其在Lam Research软件中的应用。

2401_87715305的博客 686

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: (15)腾讯云微搭:云开发为底层支撑的低代码应用/表单开发平台
下一篇: Sigmoid和Softmax共通与区分
Netceor
博客等级 码龄9年 1046粉丝 306原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值