获取网站验证码的图片文件解决办法
获取网站验证码的图片文件
网站地址是http://58.27.8.3/
图片文件在http://58.27.8.3/img? 后面是一个随机数(script是用math.random()实现的)
请大家帮忙
------解决方案--------------------
网站地址是http://58.27.8.3/
图片文件在http://58.27.8.3/img? 后面是一个随机数(script是用math.random()实现的)
请大家帮忙
------解决方案--------------------
- Delphi(Pascal) code
uses ActiveX,ComObj; procedure TfrmMain.FormCreate(Sender: TObject); begin OleInitialize(nil); end; procedure TfrmMain.DomImg2Image(wb:TWebBrowser); var i:Integer; rang:IHTMLControlRange; s:string; begin try //pic是图片的节点(层)名称,你打开源代码看一下,替换成你的就行了 s := (IHTMLDocument2(wb.Document).images.item('pic',EmptyParam) as IHTMLElement).getAttribute('src',0); //showmessage(s); rang:=((IHTMLDocument2(wb.Document).body as HTMLBody).createControlRange)as IHTMLControlRange; rang.add(IHTMLDocument2(wb.Document).images.item('pic',EmptyParam)as IHTMLControlElement); rang.execCommand('Copy',False,0); image1.Picture.Assign(ClipBoard); except end; end; procedure TfrmMain.FormDestroy(Sender: TObject); begin OleUninitialize; end;
------解决方案--------------------
------解决方案--------------------
识别 是通过一针一针 的去比对
上面有人出价格了
------解决方案--------------------
- Delphi(Pascal) code
//用到了IndyHTTP 即FHTTP procedure Mypost.getvcode; var Img : TMemoryStream; jpeg : TJPEGImage; HTML: TStringstream; str:string; begin img:=Tmemorystream.Create; jpeg:=TJpegimage.Create; HTML:=TStringstream.Create; Fhttp.Request.Referer :=; Fhttp.Get('http://58.27.8.3/img?',img); img.Position :=0; jpeg.LoadFromStream(img); Form1.Image1.Picture.assign(jpeg); jpeg.Free ; img.Free ; HTML.Free; end;