rpa
文章平均质量分 56
rpa代码学习
hello rpa
这个作者很懒,什么都没留下…
展开
-
45. Pandas实现模糊匹配Merge数据的方法
Pandas实现模糊匹配Merge数据的方法import pandas as pdimport numpy as npimport re1. 两份数据# 关键词数据df_keyword = pd.DataFrame({ "keyid": np.arange(5), "keyword": ["numpy", "pandas", "matplotlib", "sklearn", "tensorflow"]})df_keyword原创 2021-03-22 11:21:14 · 5811 阅读 · 0 评论 -
44. Pandas按行遍历DataFrame的3种方法
Pandas按行遍历DataFrame的3种方法import pandas as pdimport numpy as npimport collectionsdf = pd.DataFrame( np.random.random(size=(100000, 4)), columns=list('ABCD'))df.head(3) A B C D 0原创 2021-03-22 11:20:25 · 579 阅读 · 0 评论 -
42. Python处理Excel一列变多列
Python处理Excel一列变多列1. 读取数据import pandas as pddf = pd.read_excel("./course_datas/c42_split_onecolumn_tomany/学生数据表.xlsx")df.head() 学号 数据 0 S001 怠涵:女:23:山东 1 S002原创 2021-03-22 11:19:41 · 643 阅读 · 0 评论 -
chrom解锁防爬
trace('se启动Chrome驱动...')信息 = se启动Chrome驱动()if (信息 <> '')[ 返回 = 设置指标('严重', '无法启动IE驱动:' + 信息, '') trace(返回) Exit]代理临时路径 = 获取代理临时路径()下载保存路径 = 替换字符串(代理临时路径, '\', '\\') + '1\\1\\1\\1\\1\\'sOptions = '"prefs":{"profile.default_content_setting原创 2020-12-31 09:43:21 · 89 阅读 · 0 评论 -
json当map使用
{$I 输入模板.run}设置JSON值(json字符串,key,value){$I 帮助信息.run}{$I 参数定义.run}json字符串:字符串key:字符串value:字符串{$I 返回定义.run}返回:字符串{$I 函数主体.run}if (json字符串 = '')[ root = 创建JSON对象() 设置JSON数据S(root, key, value) json字符串 = JSON转字符串(root)] else[ 错误 = 解析JSON字符原创 2020-12-31 09:29:56 · 497 阅读 · 0 评论 -
生僻字插入数据库
首先,mysql数据库的字符集要设置成utf8mb4,这种是utf8的升级版本,可以存储下生僻字.DB = 链接FireDACMysqlCode(IP, strtoint(端口), SID, 用户, 密码,'UTF8')链接mysql数据库的时间,要设置好编码字符集就可以了....原创 2020-12-31 09:27:00 · 829 阅读 · 0 评论 -
模拟鼠标移动
{$I 输入模板.run}鼠标移动(窗口, X, Y){$I 帮助信息.run}{$I 参数定义.run}窗口:HWNDX:整型Y:整型{$I 返回定义.run}返回:字符串{$I 函数主体.run}// 鼠标位置和目标位置的距离, 相对起始位置为目标窗口原点// 计算方向 = (目标位置 - 鼠标位置) / abs(目标位置 - 鼠标位置)窗口 = 获取鼠标窗口() // 用于调试//窗口 = 等待窗口(进程,['WINDOWSFORMS10.WINDOW.8.原创 2020-12-31 09:23:40 · 651 阅读 · 0 评论 -
IE图片验证码
图片验证码 = 等待IE元素(窗口, 'RegEx=False;tag=span;id=;class=vcode;', 0, 10) if (图片验证码 = nil) [ 抛出异常信息('图片验证码 元素不存在') ] 结果1 = 获取元素屏幕位置(图片验证码,X,Y) 结果2 = 获取元素大小(图片验证码,W,H) 图片 = 截取图片(0, X, Y, W, H) 本地图片路径 = 获取代理临时路径() + 'jingjiren.jpg' trace(..原创 2020-12-22 14:08:09 · 112 阅读 · 0 评论 -
RPA-企业微信需要的配置文件
需要两个文件的支持ssleay32.dlllibeay32.dll原创 2020-12-21 13:40:09 · 648 阅读 · 0 评论 -
excel排序
行数 = Com获取行数(工作簿, 页签) Com清除排序字段(工作簿, 0) Com添加排序字段(工作簿, 1, 'C2', 1, 1) 工作域 = format('A2:G%d',[行数]) TRACE('工作域:' + 工作域) Com排序(工作簿, 1, 工作域,2, False,1, 1) Com保存工作簿(工作簿, 数据表)...原创 2020-12-11 18:25:42 · 77 阅读 · 0 评论 -
设置Chrom文件下载路径
# 要单\变成\\下载路径 = 替换文本(下载路径,'\','\\')// 启动驱动信息 = se启动Chrome驱动()if (信息 <> '')[ 返回 = 设置指标('严重', '无法启动IE驱动:' + 信息, '') trace(返回) Exit]sOptions = '"prefs":{"profile.default_content_settings.popups":0,"download.default_directory":"' + 下载路径 +.原创 2020-12-11 18:23:23 · 234 阅读 · 0 评论 -
chrom截图元素
窗口 = 等待窗口(0,['Chrome_WidgetWin_1'], ['Login - Google Chrome'],30)激活窗口(窗口)信息 = seGetElementRect(sSessionID, 验证码图片, x, y, w, h)结果 = 截取图片(窗口,x, y, w, h) trace('验证码图片') 图片 = 截取图片(0, x, y + 115, w,原创 2020-12-11 18:21:55 · 165 阅读 · 0 评论 -
新建EXCEL
信息 = Com创建Excel对象(ExcelApp) try 工作簿 = Com创建工作簿(ExcelApp) Com设置单元格内容(工作簿, 1, 1, 页签,'渠道名称') Com设置单元格内容(工作簿, 1, 2, 页签,'渠道范畴') Com设置单元格内容(工作簿, 1, 3, 页签,'渠道类型') Com设置单元格内容(工作簿, 1, 4, 页签,'主渠道代码') Com设置单元格内容(工作簿, 1, 5, 页签,'渠道开发人员')..原创 2020-12-11 18:20:46 · 86 阅读 · 0 评论 -
win32设置日期
开始日期窗口 = 等待窗口(进程,['WindowsForms10.Window.8.app.0.33c0d9d','WindowsForms10.Window.8.app.0.33c0d9d','WindowsForms10.SysDateTimePick32.app.0.33c0d9d'], ['渠道信息维护--修改','(1)','(12)'],5)if (开始日期窗口 = 0)[ 返回 = 设置指标('严重','等待开始日期窗口失败','等待开始日期窗口失败') trace(返回)原创 2020-12-11 18:19:25 · 382 阅读 · 0 评论 -
获取日期中的年月日
日期 = 获取当前日期()DecodeDate(日期, Year, Month, Day)Trace(Format('%d',[Year]))Trace(Format('%d',[Month]))Trace(Format('%d',[Day]))[17:41:00] 2020[17:41:00] 12[17:41:00] 2原创 2020-12-02 17:41:30 · 285 阅读 · 0 评论 -
文本转列表
这个分两种情况文本 = '6|第七行|Succe|ssful11|11111' 文本 = 文本 + 换行符() + '188l11|11111'文本 = 文本 + 换行符() + '28811|11111' 文本 = 文本 + 换行符() + '38881|11111' 文本 = 文本 + 换行符() + '777l11|11111' sList = 创建字符串列表()try sList = 文本转列表(文本) for I = 0 to sList.count -1原创 2020-12-02 17:17:36 · 436 阅读 · 0 评论 -
获取文件名
文件路径 = 'D:\SQL\MsSQL\Temt\110902449910101.pdf'目录 = 获取文件路径目录(文件路径)日志(目录) //返回值: D:\SQL\MsSQL\Temt\文件名 = 返回完整文件名中的文件名称(文件路径)日志(文件名) //返回值: 110902449910101.pdf...原创 2020-12-02 17:15:23 · 154 阅读 · 0 评论 -
设置剪切板内容
获取焦点(元素)点击元素(元素, 1)设置剪贴板内容(意见) sleep(200)粘贴内容 = 读剪贴板上的文字内容()trace(粘贴内容)键盘输入('^v')sleep(200)原创 2020-11-30 17:48:39 · 252 阅读 · 0 评论 -
chrom通过A标签打开新的页面切换
窗口句柄 = ''lstWindowHandles =创建字符串列表()try 信息 = seGetWindowHandles(sSessionID, lstWindowHandles) if (信息 = '') [ index = lstWindowHandles.count - 1 窗口句柄 = lstWindowHandles[index] ] else [ msg = '获取新开窗口句柄失败' 返回 = 设置指标('正常', msg, '描原创 2020-11-30 17:38:06 · 232 阅读 · 0 评论 -
鼠标右键选择功能
锁定键盘(是)try 激活窗口(主窗口) Sleep(500) 键盘输入('^P') Sleep(500) 键盘输入('^P') 键盘输入('^P')finally 锁定键盘(否)end原创 2020-11-30 17:34:41 · 278 阅读 · 1 评论 -
在chrom页面按下entry
信息 = seSendKeysToActiveElement(sSessionID, seGetSysKey('Enter'))原创 2020-11-30 17:30:15 · 61 阅读 · 0 评论 -
Xpath使用技巧
不要使用,除非已经使用了所有方式仍然无法定位原创 2020-11-19 14:18:50 · 161 阅读 · 0 评论 -
netsh实现端口转发(端口映射)
微软Windows的netsh是一个命令行脚本实用工具。使用netsh工具 ,可以查看或更改本地计算机或远程计算机的网络配置。不仅可以在本地计算机上运行这些命令,而且可以在网络上的远程计算机上运行。可以手动运行Netsh命令,或创建批处理文件或脚本实现过程的自动化。netsh提供了脚本功能,让您在批处理模式下针对指定的计算机,运行一组命令。利用netsh ,可以将配置脚本保存为文本文件,便于存档或用于配置其他的计算机。netsh命令已经推出很长时间,在Windows 2000/XP/2003中.原创 2020-11-19 09:36:37 · 531 阅读 · 0 评论 -
rpa调用邮件操作
密钥不是邮箱密码,是邮箱内生成的授权码,可以有多个错误 =获取Pop3邮件表格带条件2_新(服务器,端口,用户,密钥,ssl,数量,过滤ID,发件人,标题,'20201110',状态, Table)try Table.First while not Table.Eof [ 附件 = Table.Str['附件'] trace(附件) 内容 = '' 内容 = Table.Str['主题'] Trace('主题' + 内容) 内容原创 2020-11-11 18:20:24 · 497 阅读 · 0 评论 -
执行js脚本
执行JS脚本(窗口,'document.frames["iframe_CXGL_022_1"].document.getElementById(''autocomplete'').click()') 执行JS脚本(窗口,'document.frames["iframe_CXGL_022_1"].document.getElementById(''multiple'').click()') js = 'document.frames["iframe_CXGL_022_1...原创 2020-11-05 15:47:45 · 489 阅读 · 0 评论 -
chrom selenium切换 iframe
信息 = seFindElementById(sSessionID, 'faCwbyhlscssz_iframe', iframe) if (iframe = '') [ 返回 = 设置指标('严重', '获取iframe失败', '') Trace(返回) Exit]// 切换iframe信息 = seSwitchToFrameById(sSessionID, iframe)原创 2020-11-05 15:44:10 · 122 阅读 · 0 评论 -
rpa数据库链接
首先要配置文件的firedacDriverIP = '192.168.2.110'SID = 'asdb'用户 = 'root'密码 = 'abc123'端口 = 3306DB = 链接FireDACOracle(IP, 端口, SID, 用户, 密码)try信息 = 查询SQLFireDAC(DB, 'select * from k_agent', Table) if (信息 <> '') [ 返回 = 设置指标('严重', '查询SQ原创 2020-11-03 16:15:10 · 495 阅读 · 0 评论 -
rpa集成发送邮件
第一种发送邮件(SMTP服务器,发送邮箱,用户名,密码,邮件标题,邮件内容,收件人,附件)结果 = 发送邮件('smtp.qq.com','[email protected]','[email protected]', '密码','test2','第二次试','[email protected]','C:\ABC\盆栽浇水及其他事情.xls')if (结果 <> '')[ 日志('发送邮件失败')]第二种结果 = 发送邮件2(SMTP服务器,发送邮箱,用户名,密码,原创 2020-11-03 09:33:49 · 779 阅读 · 1 评论 -
ie文件下载另存为
窗口 = 等待窗口(0, ['IEFrame'], ['招商银行网上托管银行--客户端'],10) 激活窗口(窗口) Sleep(500) 元素 = 等待UIAutomation元素(窗口, 'RegEx=False;Name=6;LocalizedControlType=拆分按钮;', 0, 10) if (元素 = nil) [ 返回 = 设置指标('严重',...原创 2020-11-03 09:33:27 · 611 阅读 · 0 评论 -
rpa对json的支持
对象 = 创建JSON对象()person = 创建JSON对象()设置JSON数据S(person, 'name', 'abc')设置JSON数据S(person, 'gender', 'famal')设置JSON数据i(person, 'age', 20)设置JSON数据O(对象, 'people', person)school = 创建JSON对象()设置JSON数据S(school, 'name', 'beijing daxue')设置JSON数据O(对象, 'school.原创 2020-11-03 09:33:06 · 344 阅读 · 1 评论 -
文件映射盘
new交易明细保存路径 = 'R:\test'if not 目录存在(new交易明细保存路径)[ 建立目录(new交易明细保存路径)]//运行命令('mkdir "R:\szkingdom"', 命令输出内容)命令 = 'mkdir "R:\szkingdom"'运行命令(命令, 命令输出内容)测试文件映射新建目录文件上传到映射盘,可以直接写到这个盘里面...原创 2020-11-03 09:32:27 · 177 阅读 · 0 评论 -
ie浏览器附件上传
//点击上传附件上传附件按钮元素 = 等待UIAutomation元素(窗口, 'RegEx=False;Name=上传附件;LegacyIAccessibleName=上传附件;', 0, 5)if (上传附件按钮元素 = nil)[ 返回 = 设置指标('严重','等待上传附件按钮元素失败','等待上传附件按钮元素失败') trace(返回) Exit]执行UIAutomation动作_前台(上传附件按钮元素, 20, 10)//增加结果截图结果截图()//点击附件上传附原创 2020-11-03 09:32:07 · 867 阅读 · 0 评论 -
pdf的读写和转excel
pdf文件路径 = 'C:\Users\Administrator\Downloads\红利再投资确认单20201030150728.pdf'错误 = 获取pdf内容和图片(pdf文件路径,'D:\托管部\测试pdf',8 ,返回内容,返回图片路径)if (错误 = '')[ trace(返回内容) trace(返回图片路径)] else[ trace(错误)]错误 = pdf转xls(pdf文件路径, 'D:\托管部\222222.xls')if (错误 <>原创 2020-11-03 09:32:50 · 105 阅读 · 0 评论 -
rpa模拟键盘输入
1).基本键:常用键盘字符串使用直接输入字符串的方式执行 // 发送按键"cfan" 键盘输入('cfan')2).特殊功能键:对于Shift、Ctrl、Alt三个控制键组合的按键,使用特殊字符来表示:Shift 使用 +;Ctrl 使用 ^;Alt 使用 %来代替;例1: 同时使用Ctrl+E 键盘输入('^e')例2: 按住Ctrl键的同时按下E与C两个键:键盘输入('^(ec)')例3:“+”、“^”字符的输入格式:键盘输入('{+}')例4:不会生成字符的控制功能原创 2020-11-03 09:31:40 · 1070 阅读 · 0 评论 -
object标签用autokey输入
使用用浏览器元素元素 = 获取IE元素(浏览器窗口, 'RegEx=False;class=contact-input;id=safePassObject;', 0)if(元素 = nil)[ 返回 = 提交指标('严重','获取密码元素失败','') trace(返回) Exit] 获取焦点(元素)错误 = AutoKey输入(密码, 200)if (错误 <> '')[ 返回 = 设置指标('严重',错误,'') trace(返回原创 2020-11-02 14:36:36 · 223 阅读 · 0 评论 -
图片右击另存为
浏览器窗口 = 等待IE浏览器窗口('全国法院信息综合查询 - 综合查询',10)验证码图片元素 = 等待IE元素(浏览器窗口,'RegEx=False;value=;name=;id=captchaImg;class=;tag=IMG;innerText=;',0,10)if (验证码图片元素 = nil)[ 返回 = 设置指标('严重','等待不到验证码图片元素','等待不到验证码图片元素') Exit] 结果 = 获取元素屏幕位置(验证码图片元素,X,Y)原创 2020-11-02 14:27:49 · 222 阅读 · 0 评论 -
验证登录成功标识
重新登录 = 'False' 登录失败提示列表 = '请输入验证码;密码错误;认证失败;' for H = 1 to 2 [ 信息 =seFindElementById(sSessionID, 'msg', sElementID) 信息 = seGetElementText(sSessionID, sElementID, sText) Trace('MSG内容:' + sText) 列数 = 获取字符串列数(登录失败提示列表, ';', 0) ..原创 2020-11-02 14:03:38 · 395 阅读 · 0 评论 -
rpa网站登录图形验证码识别
先要把图片下载到本地,再调用接口识别信息 = seFindChildElement(sSessionID, sDivElementID, 1, 'el-icon-date', sElementID)信息 = seGetElementRect(sSessionID, sElementID, x, y, w, h)// 获取元素的大小坐标。完整的代码1 结果 = 获取元素屏幕位置(图形验证码图片,X,Y) 结果 = 获取元素大小(图形验证码图片,W,H)原创 2020-11-02 14:02:21 · 1942 阅读 · 0 评论 -
rpa全局参数读取和设置
获取全局参数 获取'全局变量'中指定参数的参数值获取全局参数('登录用户')设置全局参数信息 = 设置全局参数('KCXP程序路径', 'D:\kcxp\kcxpmanager.exe')原创 2020-11-02 13:28:13 · 805 阅读 · 0 评论 -
selenium 选择器
UserSelector = '#pane-login > div > form > div:nth-child(1) > div > div > div.login-input.el-input > input' 信息 = seFindElementByCssSelector(sSessionID, UserSelector, sUserElementID) if (sUserElementID = '') [ 返回 = 设置指标('严重'..原创 2020-11-02 12:04:00 · 414 阅读 · 0 评论