imacros实现Excel数据自动录入到网页中

一、工具选择

最近接到一个项目,需要将excel数据逐条录入、保存到网页中。经过搜集资料,能实现功能的大概有以下几种方式,按键精灵、autoit、imacros、python+selenium。

按键精灵:国产模拟键鼠工具,以前用过,存在莫名其妙的bug且广告太多,放弃。

autoit:国外模拟键鼠工具,basic类编程风格,好像很长时间未更新,放弃。

imacros:兼容firefox、chorme、internet explorer8以上版本,属于浏览器内部插件,经测试完全满足需要。

python+selenium:专业级别的页面控制能力,功能强大,待有需求再详细研究。

以上方式都是能给浏览器增加类似“宏”的功能,可以这样理解:按键精灵和autoit属于“外挂”,imacros属于“内挂”,python+selenium属于“内挂外挂全功能”。

二、代码部分

imacros是浏览器插件,本身自带的函数就非常强大,用的代码非常少,非常适合我...hoho。

'打开网址www.***.com。

URL GOTO=http://www.***.com

'激活将第1个标签页

TAB T=1

'对于使用框架结构的网页必须用此语句定位到框架,否则会出现找不到标签。

FRAME F=7

'设置csv数据库位置e:\linquan.csv,excel文件另存为csv格式。

SET !DATASOURCE e:\linquan.csv 

'设置csv文件共28列,可选。

SET !DATASOURCE_COLUMNS 28

'设置从第2行开始循环。

SET !LOOP 2 

'获取数据行内容{{!LOOP}}为imacros的变量格式。

SET !DATASOURCE_LINE {{!LOOP}} 

'填入数据

TAG TYPE=INPUT:TEXT FORM=NAME:name ATTR=NAME:name1 CONTENT={{!COL1}}

TAG TYPE=INPUT:TEXT FORM=NAME:name ATTR=NAME:name2 CONTENT={{!COL2}}

TAG TYPE=INPUT:TEXT FORM=NAME:name ATTR=NAME:name3 CONTENT={{!COL3}}

...

'点击保存按钮

TAG TYPE=INPUT:BUTTON FORM=NAME:name ATTR=TXT:保存

三、其他常用命令

'下第1次出现对话框的处理方式,本人没研究明白,望高手解决。

ODIALOG POS=1 BUTTON=YES

'等待3秒

WAIT SECONDS=3

'暂停程序,本项目用此命令暂停程序,给人工审核的,点击面板continue继续执行。

PAUSE

四、以上方法是本人实践认为是最简单的方式,如果有更强大操作的需要,将会选择python+selenium方式。

posted @ 2014-12-22 17:37  森林工人  阅读(7013)  评论(1编辑  收藏  举报