一、工具選擇
最近接到一個項目,需要將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方式。
