amadis817 发表于 2010-6-18 13:52:04

怎麼讓 ie 自動點擊 [已解決]

本帖最后由 amadis817 于 2010-6-23 12:02 编辑

我想要用 來控制網路遊戲中的 一部份( 下面程式可以幫助您進去 ) ..裡面有 帳號密碼

我想要控制的是 ,進入遊戲畫面後 右邊中間 時間下面那一排 的控制選單

下面是我用 慧星小幫手 抓到上 ,但我怎麼用它就是不會 控制 ,沒辦法動作

這一排 不是按鈕也不是圖也不是 form不知道該怎麼控制它   因此想請教一下這個 該用什麼含數控制

想請教一下應該要怎麼寫( 或是那裡有範本可以參考 ,謝謝您)
<DIV class=clockmenu id=clockmenu style="MARGIN-LEFT: 684px! important"><DIV class=map id=map_map><SPAN style="WIDTH: 100%; CURSOR: pointer; POSITION: relative; HEIGHT: 50px" onclick="c.__OnSend('ajax_action.php?action=logonreward','',c.__func_comm_list,'logonreward');"></SPAN></DIV>
<DIV class=time><SPAN id=showdate>&nbsp;&nbsp;20:44:45</SPAN></DIV>
<UL id=a-menuchild>
<LI><B>事業管理</B></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('thing1','公司資訊',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">公司資訊</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('thingstructure','公司架構',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">公司架構</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('jobconst','常務工作',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">常務工作</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('buildingCreate','創建大廈',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">創建大廈</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('factoryShow','我的工廠',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">我的工廠</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('oilFieldCreate','建立油井',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">建立油井</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('thing2','店舖列表',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">店舖列表</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('thing3','員工列表',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">員工列表</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('thing4','員工招聘',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">員工招聘</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('employeeOperation','員工管理',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">員工管理</A></LI>
<LI onmouseover="this.className='m-s-child-over'" onclick="om.clickchild('flagshipStoreAct','拓展部',this)" onmouseout="this.className='m-s-child-out'"><A href="javascript:void(0)">拓展部</A></LI><BR style="CLEAR: both"></UL></DIV>






#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

_IEErrorHandlerRegister()

$oIE = _IECreateEmbedded()
GUICreate("CEO_IE VERSION AUTO RUN", 1200, 980, _
      (@DesktopWidth - 640) / 2, (@DesktopHeight - 580) / 2, _
      $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
$GUIActiveX = GUICtrlCreateObj($oIE, 20, 20, 1200, 880)
$GUI_Button_Back = GUICtrlCreateButton("Back", 10, 920, 100, 30)
$GUI_Button_Forward = GUICtrlCreateButton("Forward", 120, 920, 100, 30)
$GUI_Button_Home = GUICtrlCreateButton("Home", 230, 920, 100, 30)
$GUI_Button_Stop = GUICtrlCreateButton("Stop", 340, 920, 100, 30)
$GUI_Button_OK = GUICtrlCreateButton("OK", 450, 920, 100, 30)

GUISetState()       ;Show GUI


_IENavigate ($oIE, "http://www.funmily.com/")
SLEEP(2000)
_IEImgClick ($oIE, "http://image.funmily.com/funmily/zh-tw/images/btn_login.gif")
sleep(2000)
$oForm = _IEFormGetObjByName($oIE, "login_form")
$oQuery = _IEFormElementGetObjByName($oForm, "login_type")
_IEFormElementOptionSelect($oQuery, 0, 1, "byIndex"); 0 是 funmily 1 是uid
$oQuery = _IEFormElementGetObjByName($oForm, "username")

_IEFormElementSetValue($oQuery, "test6688")
$oQuery = _IEFormElementGetObjByName($oForm, "password")
_IEFormElementSetValue($oQuery, "6688test")

MsgBox(0, "輸入驗證螞", "code")
_IENavigate ($oIE, "http://twceologin.funmily.com ")
sleep(3000)
_IEImgClick ($oIE, "http://twceologin.funmily.com/images/btn_sel_3.gif")
sleep(3000)

_IEImgClick ($oIE, "http://twceologin.funmily.com/images/enterbt.gif")


; Waiting for user to close the window
While 1
    $msg = GUIGetMsg()
    Select
      Case $msg = $GUI_EVENT_CLOSE
            Exit
      Case $msg = $GUI_Button_Home



謝謝您的回答

crkey12345 发表于 2010-6-18 17:26:10

javascript 好像要建立个对象操作。忘了

yejier1983 发表于 2010-6-18 17:29:55

不太明白,标记一下

yjses 发表于 2010-6-20 17:34:55

不能根据显示的文字,进行点击么?不行就记录鼠标的位置,很笨的方法。哈哈

wua0550 发表于 2010-6-20 18:10:12

可以直接用
_IELinkClickByText()


如_IELinkClickByText($oie,"拓展部")

cindya 发表于 2010-6-22 09:16:56

_IELinkClickByText($oie,"拓展部")

amadis817 发表于 2010-6-23 12:04:15

真的可以也..謝謝

心得,最早也是用滑鼠記位置 ,後來一直看就想要寫的更好.就找帖子看 ,當然還是不懂,只好 發帖子詢問

謝謝大家的幫忙...越來越喜歡寫 autoit 了....玩遊戲感覺越來越無聊

aniu_86 发表于 2010-6-24 12:28:09

还可以通过_IEGetObjById获取到对象,然后定义click事件
$obj=_IEGetObjById($IE,'id名称')
_IEAction($obj,'click')

amadis817 发表于 2010-6-24 14:11:48

回复 8# aniu_86


想請問一下..因為這樣一排...我用 慧星小幫手去查, 每一個的id 都相同

似乎沒辦法控制..是我用錯了嗎??

aniu_86 发表于 2010-6-29 23:38:40

回复aniu_86


想請問一下..因為這樣一排...我用 慧星小幫手去查, 每一個的id 都相同

似乎沒 ...
amadis817 发表于 2010-6-24 14:11 http://www.autoitx.com/images/common/back.gif


不好意思,这几天没有上论坛
你查看网页中的元素,推荐使用IE8或是装上Firefox,然后装上firebug这个插件

例如IE8,打开一个网页,按住F12,就可以打开“开发人员工具”
按下Ctrl+B
鼠标变成小箭头,点击页面的元素,就可以在信息看到该元素的信息了
页: [1]
查看完整版本: 怎麼讓 ie 自動點擊 [已解決]