我有这个自动脚本工作正常,但我怎么能让它重复工作而不重复输入每个值的脚本?
Value1 = usernameA使用passwordA
Value2 = usernameB使用passwordB
Value3 = usernameC使用passwordB
#include <IE.au3>
$oIE = _IECreate ("www.site.com/login")
$username = _IEGetObjByName ($oIE, "q_username")
$id = _IEGetObjByName ($oIE, "q_username")
$password = _IEGetObjByName ($oIE, "q_password")
$id = _IEGetObjByName ($oIE, "q_password")
$button1 = _IEGetObjByName ($oIE, "login")
_IEPropertySet($username, 'innerText', 'usernameA')
_IEPropertySet($id, 'innerText', 'usernameA')
_IEPropertySet($Password, 'innerText', 'passwordA')
_IEPropertySet($id, 'innerText', 'passwordA')
_IEAction ($button1,"click")
我不希望它像这样!
#include <IE.au3>
$oIE = _IECreate ("www.site.com/login")
$username = _IEGetObjByName ($oIE, "q_username")
$id = _IEGetObjByName ($oIE, "q_username")
$password = _IEGetObjByName ($oIE, "q_password")
$id = _IEGetObjByName ($oIE, "q_password")
$button1 = _IEGetObjByName ($oIE, "login")
_IEPropertySet($username, 'innerText', 'usernamea')
_IEPropertySet($id, 'innerText', 'usernameA')
_IEPropertySet($Password, 'innerText', 'passworA')
_IEPropertySet($id, 'innerText', 'passwordA')
_IEAction ($button1,"click")
$oIE = _IECreate ("www.site.com/login")
$username = _IEGetObjByName ($oIE, "q_username")
$id = _IEGetObjByName ($oIE, "q_username")
$password = _IEGetObjByName ($oIE, "q_password")
$id = _IEGetObjByName ($oIE, "q_password")
$button1 = _IEGetObjByName ($oIE, "login")
_IEPropertySet($username, 'innerText', 'usernameB')
_IEPropertySet($id, 'innerText', 'usernameB')
_IEPropertySet($Password, 'innerText', 'passwordB')
_IEPropertySet($id, 'innerText', 'passwordB')
_IEAction ($button1,"click")
$oIE = _IECreate ("www.site.com/login")
$username = _IEGetObjByName ($oIE, "q_username")
$id = _IEGetObjByName ($oIE, "j_username")
$password = _IEGetObjByName ($oIE, "q_password")
$id = _IEGetObjByName ($oIE, "q_password")
$button1 = _IEGetObjByName ($oIE, "login")
_IEPropertySet($username, 'innerText', 'usernameC')
_IEPropertySet($id, 'innerText', 'usernameC')
_IEPropertySet($Password, 'innerText', 'passwordC')
_IEPropertySet($id, 'innerText', 'passwordC')
_IEAction ($button1,"click")
还有如何让它在完成后回到脚本的第一行?
答案 0 :(得分:0)
使用功能:
#include <IE.au3>
Func TestPassword($user, $pass)
$oIE = _IECreate ("www.site.com/login")
$username = _IEGetObjByName ($oIE, "q_username")
$id = _IEGetObjByName ($oIE, "q_username")
$password = _IEGetObjByName ($oIE, "q_password")
$id = _IEGetObjByName ($oIE, "q_password")
$button1 = _IEGetObjByName ($oIE, "login")
_IEPropertySet($username, 'innerText', $user)
_IEPropertySet($id, 'innerText', $user)
_IEPropertySet($Password, 'innerText', $pass)
_IEPropertySet($id, 'innerText', $pass)
_IEAction ($button1,"click")
EndFunc
TestPassword('usernameA', 'passwordA');
TestPassword('usernameB', 'passwordB');
TestPassword('usernameC', 'passwordC');
你甚至可以制作一个数组并使用For...In...
迭代它:
$credentials[0]['user'] = 'usernameA';
$credentials[0]['pass'] = 'passwordA';
$credentials[1]['user'] = 'usernameB';
$credentials[1]['pass'] = 'passwordB';
For $cred In $credentials
TestPassword($cred['user'], $cred['pass']);
Next