AutoIT製作一鍵登入 (AUTOIT)
IE.au3的介紹以及應用教程
先簡單說一下HTML表單(Form)是HTML的一個重要部分,主要用於提交用戶輸入的資料。
第一步:我們如何找到一個網頁的表單和控制項
#include <IE.au3>
$oIE = _IECreate("http://www.blueshop.com.tw/member/psnLogin.asp")
$oForms = _IEFormGetCollection ($oIE)
MsgBox(0, "表單資訊", "這個頁面上共有" & @extended & "個表單")
For $oForm In $oForms
MsgBox(0, "表單名稱", $oForm.name)
$oQuerys = _IEFormElementGetCollection ($oForm)
For $oQuery In $oQuerys
MsgBox(0, "表單控制項資訊", "名稱:"&$oQuery.name & " 類型:"&$oQuery.type)
Next
Next
$oIE = _IECreate("http://www.blueshop.com.tw/member/psnLogin.asp")
$oForms = _IEFormGetCollection ($oIE)
MsgBox(0, "表單資訊", "這個頁面上共有" & @extended & "個表單")
For $oForm In $oForms
MsgBox(0, "表單名稱", $oForm.name)
$oQuerys = _IEFormElementGetCollection ($oForm)
For $oQuery In $oQuerys
MsgBox(0, "表單控制項資訊", "名稱:"&$oQuery.name & " 類型:"&$oQuery.type)
Next
Next
第二步:我們來讓autoit3填寫這個表單(製作一鍵登入)
已經可以通過上面的方法找到相關的資料就可以得到如下資訊:
(1)欄位名稱: 快速找到指定的欄位名稱
#include <IE.au3>
$oIE = _IECreate ("http://www.blueshop.com.tw/member/psnLogin.asp")
$oForm = _IEFormGetCollection($oIE, 1)
$oQuery = _IEFormElementGetObjByName ($oForm, "lgnfrm_tbxuid")
_IEFormElementSetValue($oQuery, "輸入帳號")
$oQuery = _IEFormElementGetObjByName ($oForm, "lgnfrm_tbxpwd")
_IEFormElementSetValue($oQuery, "輸入密碼")
_IEFormSubmit($oForm)
$oIE = _IECreate ("http://www.blueshop.com.tw/member/psnLogin.asp")
$oForm = _IEFormGetCollection($oIE, 1)
$oQuery = _IEFormElementGetObjByName ($oForm, "lgnfrm_tbxuid")
_IEFormElementSetValue($oQuery, "輸入帳號")
$oQuery = _IEFormElementGetObjByName ($oForm, "lgnfrm_tbxpwd")
_IEFormElementSetValue($oQuery, "輸入密碼")
_IEFormSubmit($oForm)
(2)欄位位置:欄位名稱異動不影響
#include <IE.au3>
$oIE = _IECreate ("http://www.blueshop.com.tw/member/psnLogin.asp")
$oForm = _IEFormGetCollection($oIE, 1)
$oQuery = _IEFormElementGetCollection($oForm, 1)
_IEFormElementSetValue($oQuery, "輸入帳號")
$oQuery = _IEFormElementGetCollection($oForm, 2)
_IEFormElementSetValue($oQuery, "輸入密碼")
_IEFormSubmit($oForm)
$oIE = _IECreate ("http://www.blueshop.com.tw/member/psnLogin.asp")
$oForm = _IEFormGetCollection($oIE, 1)
$oQuery = _IEFormElementGetCollection($oForm, 1)
_IEFormElementSetValue($oQuery, "輸入帳號")
$oQuery = _IEFormElementGetCollection($oForm, 2)
_IEFormElementSetValue($oQuery, "輸入密碼")
_IEFormSubmit($oForm)
如有錯誤 歡迎指正