llssky2003 发表于 2009-7-22 15:44:28

开心网autoit+Excel 外挂完美解决

本帖最后由 llssky2003 于 2009-7-24 14:59 编辑

最近在玩开心网,里面也有是动画,想自己做个农场外挂,虽然到处都是外挂下载,不知道怎样获得开心网的数据。
现在做到手动将数据输入Excel表格,然后自动计算作物成熟时间,并开始倒计时。。
就是缺少获取作物成熟时间,需要手动输入。

从网上可以下载到外挂,但不知道是怎么编写的。
希望高手出来指教~

llssky2003 发表于 2009-7-22 15:45:35

还有一点忘了说明了,是http://www.kaixin001.com开心网

llssky2003 发表于 2009-7-22 16:00:31

主要考虑到好友较多,加上农场土地块较多,使用Autoit单独完成所有功能有些麻烦,所以就需要借助Excel软件,将数据暂存,然后在进行处理。

rolaka 发表于 2009-7-22 17:08:07

我写过...完全可以自己来...

llssky2003 发表于 2009-7-22 17:11:49

噢,具体怎么做的呀?

rolaka 发表于 2009-7-22 17:16:19

本帖最后由 rolaka 于 2009-7-22 17:17 编辑


Func _GardenGetConf($_fuid)
        For $i = 0 To 5
                _IENavigate($object, "http://www.kaixin001.com/!house/!garden//getconf.php?verify=" & $token & "&fuid=" & $_fuid & "&r=0." & TimerInit())
                $temp = _IEBodyReadHTML($object)
                If StringInStr($temp, "</RANK>") Then
                        Return BinaryToString(StringToBinary("<CONF><ACCOUNT><RANK>" & $temp, 4), 4)
                EndIf
        Next
EndFunc   ;==>_GardenGetConf

Func _GardenManage($_fuid)
        Writelog("取得xml信息文件...")
        _XMLLoadXML(_GardenGetConf($_fuid))
        Writelog("ok!", 1)
        ;遍历
        For $i = 1 To 15
                ;地的编号
                $farmnum = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/FARMNUM")
                ;状态: 1-可耕種, 0-不可耕種
                $status = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/STATUS")
                ;水: 0-6, 小于6表示需要浇水
                $water = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/WATER")
                ;草: 0-没有, 1-有
                $grass = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/GRASS")
                ;害虫: 0-没有, 1-有
                $vermin = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/VERMIN")
                ;种子id
                $seedid = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/SEEDID")
                ;好友共享地: 1-是, 0-不是
                $shared = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/SHARED")
                ;html信息
                $crops = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/CROPS")
                ;所有者好友id
                $fuid = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/FUID")
                ;判断是否可耕种
                Writelog("地块编号: " & $farmnum)
                ;农作物生长状态: -1-已偷光, 1-生长中, 2-可收割, 3-收割完
                If $status == 0 Then
                        Writelog("...不能耕种 放弃!", 1)
                        ExitLoop
                EndIf
                $cropsstatus = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/CROPSSTATUS")
                If @error Then
                        Writelog("...未耕种 放弃!", 1)
                        ContinueLoop
                EndIf
                ;判断是否需要浇水
                If $water < 5 Then
                        ;浇水
                        Writelog("浇水中...")
                        _GardenWater($_fuid, $farmnum)
                        Writelog("ok!", 1)
                EndIf
                ;是否需要除虫
                If $vermin == 1 Then
                        ;除虫
                        Writelog("捉虫中...")
                        _GardenVermin($_fuid, $farmnum)
                        Writelog("ok!", 1)
                EndIf
                ;是否需要除草
                If $grass == 1 Then
                        ;拔草
                        Writelog("除草中...")
                        _GardenGrass($_fuid, $farmnum)
                        Writelog("ok!", 1)
                EndIf
                ;是否可收割
                If $cropsstatus == 2 Then
                        Writelog("已成熟...")
                        ;判断是否可偷/收获
                        If Not StringInStr($crops, "偷") And Not StringInStr($crops, "不") Then
                                ;判断是否是爱心地
                                If $shared == 1 Then
                                        Writelog("是爱心地...", 1)
                                        ;是不是我的地
                                        If $fuid == $myuid Or $_fuid == 0 Then
                                                ;偷菜/收获
                                                Writelog("可收获...", 1)
                                                _GardenHavest($_fuid, $farmnum)
                                                Writelog("ok!", 1)
                                        Else
                                                Writelog("不可收获 放弃!", 1)
                                        EndIf
                                        ;如果不是爱心地
                                Else
                                        Writelog("可收获...", 1)
                                        _GardenHavest($_fuid, $farmnum)
                                        Writelog("ok!", 1)
                                EndIf
                        Else
                                Writelog("不可收获 放弃!", 1)
                        EndIf
                EndIf
        Next
EndFunc   ;==>_GardenManage

Func Writelog($str, $line = 0)
        If $str == "" Then
                FileWrite($fp, "+-----------------------------------------+" & @CRLF)
                FileWrite($fp, "|                                       |" & @CRLF)
                FileWrite($fp, "|             Hyperion's Log            |" & @CRLF)
                FileWrite($fp, "|                                       |" & @CRLF)
                FileWrite($fp, "+-----------------------------------------+")
        Else
                If $line == 0 Then
                        FileWrite($fp, @CRLF & "[" & @HOUR & ":" & @MIN & ":" & @SEC & "] " & $str)
                Else
                        FileWrite($fp, $str)
                EndIf
        EndIf
EndFunc   ;==>Writelog
需要ie.au3 XMLDomWrapper.au3 支持 这是我那个外挂取得资料的部分...

这还不是完整的哦

rolaka 发表于 2009-7-22 17:19:17

本帖最后由 rolaka 于 2009-7-22 17:20 编辑

那个

;html信息
$crops = _XMLGetValue("/CONF/GARDEN/ITEM[" & $i & "]/CROPS")

时间是写在这里面的

补充一点的说 计算时间方面 au3很容易就可以解决

llssky2003 发表于 2009-7-22 17:27:58

呵呵,高手呀,我对网页方面了解甚少,研究了好几天网页源码,也没明白什么东西,谢谢啦。。

llssky2003 发表于 2009-7-22 17:28:02

呵呵,高手呀,我对网页方面了解甚少,研究了好几天网页源码,也没明白什么东西,谢谢啦。。

llssky2003 发表于 2009-7-22 17:31:51

XMLDomWrapper.au3 ,需要单独下载吗,电脑上没有,能否帮忙上传一下,或发到我邮箱:llssky2003@163.com,谢谢啦

omegabomb 发表于 2009-7-22 17:33:32

XMLDomWrapper.au3在UserInclude里面有

llssky2003 发表于 2009-7-22 17:35:30

嗯,看到了。。。

lynfr8 发表于 2009-7-22 19:02:05

不玩这个,不够碰巧在网上见到这个外挂
也不知有无效
自己测试了

打开TOOL.HTM 然后把验证码www.1t2t34t.cn输入
开心农场辅助功能简介:
1.自动收获自己作物
2.实时监视并且偷取他人作物
3.可以长期挂机,可以自己设置更新时间(默认为3小时)
4.可以随机放草,如果觉得放50次草麻烦,这个可以帮忙
5.帮助好友清除害虫杂草与干旱

llssky2003 发表于 2009-7-23 09:20:21

11# omegabomb
昨天的问题,我找到了_XMLDomWrapper.au3 ,不过没有_xmlloadxml()函数,还有另外一个就是_IENavigate($object, "http://www.kaixin001.com/!house/!garden//getconf.php?verify=" & $token & "&fuid=" & $_fuid & "&r=0." & TimerInit())
里面的$token 和$_fuid 变量是否为用户密码和用户名?
我试了一下把它们替换成我的用户名和密码作为网址输入IE,网页没有内容,不知道是否这么去理解。。

rolaka 发表于 2009-7-23 11:29:00

本帖最后由 rolaka 于 2009-7-23 11:32 编辑

我建议你去下个Fiddler... 仔细研究下kaixin001的工作方式 否则你没有办法选择的

我给的只是取得资料部分


还有 11楼说的那个 不是我用的版本
页: [1] 2
查看完整版本: 开心网autoit+Excel 外挂完美解决