fenhanxue 发表于 2015-5-25 11:13:45

ie 操作中,如何保存动态图【哎,锁掉吧,解决不了了看来是】

本帖最后由 fenhanxue 于 2015-11-12 03:18 编辑

如这样的验证码,是动态图的,应该怎么保存?

https://captcha.yhd.com/public/getgif.do?

我这样保存下来的是静态的图片,应该怎么改?#include<IE.au3>
#Include <Clipboard.au3>
#Include <ScreenCapture.au3>
$url = 'https://captcha.yhd.com/public/getgif.do?'
$oIE = _iecreate($url)

                $oImgs = _IEImgGetCollection ($oIE)
      For $oImg In $oImgs
            If StringInStr($oImg.nameprop,'getgif.do?') Then
               $oPic = $oIE.Document.body.createControlRange()
               $oPic.Add($oImg)
               $oPic.execCommand("Copy")
               $img = ClipGet()
                     _ClipBoard_Open (0)
               Local $hMemory = _ClipBoard_GetDataEx ($CF_BITMAP)
                           _ClipBoard_Close ()
                           _ScreenCapture_SaveImage ('1.gif', $hMemory)
            EndIf
                Next

xlj310 发表于 2015-5-26 00:05:54

如果仅仅是要保存,很简单呀,图像上右键另存为即可。 如果你想破验证码,这就不在我的能力范围内了。

fenhanxue 发表于 2015-5-26 13:43:36

右键这个大家都知道的。。。我想知道,如何用软件,自动把图片保存下来。。。

只是保存下来,验证码识别这个是下一步的问题,不在提问范围内。。。

fenhanxue 发表于 2015-5-26 13:45:15

回复 2# xlj310


    如何把动态图 用au3 自动保存到本地文件1.gif
   
    PS:不要模拟鼠标操作。。。

lahan 发表于 2015-6-3 21:52:49

你那是截取区域的,像截图一样,能动态么。
$url="https://captcha.yhd.com/public/getgif.do?"
$xmlhttp=ObjCreate("msxml2.xmlhttp")
If IsObj($xmlhttp) Then
      $xmlhttp.open("GET",$url,True)
      $xmlhttp.send
      While $xmlhttp.readystate<>4
                Sleep(100)
      WEnd
      If $xmlhttp.status=200 Then
                $tmp=StringRegExp($xmlhttp.getresponseheader("Content-Type"),"(?is)image\/(.+)",3)
                Msgbox(0,'',$tmp)
                                If IsArray($tmp) Then
                        $file=FileOpen(@ScriptDir&"\temp."&$tmp,2+8+16)
                        FileWrite($file,$xmlhttp.responsebody)
                        FileClose($file)
                        ShellExecute(@ScriptDir&"\temp."&$tmp)
                EndIf
      EndIf
EndIf

fenhanxue 发表于 2015-6-4 10:49:27

回复 5# lahan


获取到动态截图后,    我想要继续用#include <IE.au3>的一些函数继续进行网页操作,所以想请教,

                $oIE = _IECreate('https://captcha.yhd.com/public/getgif.do?')
      ;这时候       $oIE 不是会显示一张确定的图片,那如何把这张确定的动态图保存下来?       
                ;(也就是 _IECreate 后显示的是什么,就保存什么,不要保存成别的图)
页: [1]
查看完整版本: ie 操作中,如何保存动态图【哎,锁掉吧,解决不了了看来是】