当前位置:首页 » 股票交易 » autoit与股票交易自动化

autoit与股票交易自动化

发布时间: 2021-12-02 06:37:39

A. autoit用的什么语言

类BASIC 脚本语言,其实就是自己定义的语言,比较简单。
下面是介绍:

AutoIt v3 版本, 这是一个使用类似 BASIC 脚本语言的免费软件, 它设计用于 Windows GUI(图形用户界面)中进行自动化操作. 利用模拟键盘按键, 鼠标移动和窗口/控件的组合来实现自动化任务. 而这是其它语言不可能做到或无可靠方法实现的(比如VBScript和SendKeys). AutoIt 非常小巧, 完全运行在所有windows操作系统上.(thesnow注:现在已经不再支持win 9x,微软连XP都能放弃, 何况一个win 9x支持), 并且不需要任何运行库.

AutoIt 最初是为PC(个人电脑)的"批量处理"而设计, 用于对数千台PC进行(同样的)配置. 现在, autoit 是一个支持复杂表达式, 自定义函数, 循环等的强大脚本软件.

B. Autoit如何调用91OCR

网络上有很多基于OCR识别技术的工具、引擎以及一些web服务,它们对于识别一些简单的验证码是有一定的效果的,但是对于比较复杂的验证码(比如增加了一些模糊功能或者多种语言文字组合)识别效果并不太理想。此处将使用一款开源的OCR引擎(Tesseract)来解决AutoIT自动化测试中验证码识别的问题。

Tesseract原本由惠普开发,在一段时间内因为一些原因没有更新,Google于2006年重启了这个项目,目前已经发布到了3.01版本。

首先下载Tesseract并进行安装。安装完成之后,做一个小的实验。将一张验证码图片放置到“C:”。运行CMD,输入命令:

“tesseract.exe c:1.jpg c:1 -1”

查看“C:”下是否生成了一个名为“1.txt”的文本,并查看文本中的识别结果。



由此,可以看出图片中的验证码已经被Tesseract识别出来。

使用Tesseract可以从图片中识别出验证码来,那么自动化测试中处理验证码的第一步就是从应用中把验证码图片抠出来。下面的这段代码即实现了这样的处理。

WhileNotCheckLinkExistByText($OIE,"退出>>")
;MsgBox(1,"num","第"&$i&"次")
Local$Inputcheck=_IEGetObjByName($OIE,"txtValidateCode")
Local$oImg=_IEGetObjById($oIE,"vcodeimg")
$oPic=$oIE.Document.body.createControlRange()
$oPic.Add($oImg)
$oPic.execCommand("Copy")
$bmp=ClipGet()
FileCopy($bmp,"c:1.jpg",1)
$cmd="tesseract.exec:1.jpgc:1-1"
Run(@ComSpec&"/k"&$cmd,"",@SW_HIDE)
Sleep(2000)
$file=FileOpen("c:1.txt",0)
$checkCode=FileRead($file,4)
;MsgBox(1,"识别为",$checkCode)
FileClose($file)
$Inputcheck.value=$checkCode
Local$Inputname=_IEGetObjByName($OIE,"txtUserName")
Local$InputPWD=_IEGetObjByName($OIE,"txtPassword")

Local$LoginBtn=_IEGetObjByName($OIE,"btnLogin")
$Inputname.value=$Tester
$InputPWD.value=$TesterPWD
$LoginBtn.click
_IELoadWait($OIE)
ProcessClose("cmd.exe")
$i=$i+1
Wend

这段代码的思想就是,当识别出来的验证码输入后登录不成功,就重新获取验证码图片再识别再次尝试,直到识别出正确的验证码。

注意到这段代码:

$cmd="tesseract.exec:1.jpgc:1-1"
Run(@ComSpec&"/k"&$cmd,"",@SW_HIDE)

即使用CMD命令来执行Tesseract的识别。

Tesseract还具有很强大的训练功能,可以利用训练功能增强Tesseract的识别能力。

C. 求一个自动化脚本(autoit或VB)一键运行VirtualBox主程序,并点击启动按钮进入系统,谢谢

autoit 用到run() sleep() mouseclick()
比如(具体内容根据自已电脑情况更改)
Run ( "???VirtualBox.exe","c:\program????????????" )

Sleep ( 60000)
MouseClick ( "left" ,?,?,1, 0)

你可能需要的内容:
Run ( "执行文件名" , "执行文件路径") 比如run("notepad.exe","c:\windows")
Sleep ( 4321) 程序等4321毫秒后进行下一步动作
MouseClick ( "left" , 100,200, 1, 0 ) 左键在距屏幕左上角水平100像素垂直200像素的地方点3下。鼠标移动0耗时

具体定义
Run ( "program" [, "workingdir" [, show_flag [, opt_flag]]] )

Sleep ( delay )
MouseClick ( "button" [, x, y [, clicks [, speed]]]
)

D. java自动化用autoit怎么写

随着Web应用业务系统的普及和深化,业务系统的种类逐渐增多。操作流程也更加繁杂,日常操作任务显著增加,繁杂的操作流程也非常容易出现纰漏。 那有没有办法改善这种状况呢?回答是肯定的。借助Web应用的自动化测试工具,我们可以完成自动操作任务,把那些程序化的操作交给计算机去完成。 在各种自动化测试工具中,Autoit3的学习成本是最低的,很适合没有计算机专业知识的人使用,它可以完成各种软件的自动化操作任务,在本系列经验中我们只讨论它的Web应用操作模块。 工具/原料 Autoit3 AutoIt文档 方法/步骤 下载Autoit3安装包及文档。 Autoit3的安装包只包含一个标准可执行文件(autoit-v3-setup.exe)。 下载地址: 运行autoit-v3-setup.exe,单击Next。 单击IAgree。 单击Next。 单击Next。 选择安装路径,单击Install。 单击Finish,完成安装。 Autoit3的安装过程非常简单,至此就已经成功安装完成了。 步骤阅读

E. autoit怎么做自动化

ControlCommand ( 窗口标题, 窗口文本, 控件ID, 命令 [, 选项] )
只能用于操作ToolbarWindow32类型的工具栏控件,经过封装的控件是不行的。

控件ID - 建议使用类别名,即(类名+Instance),如 ToolbarWindow321
命令 - 固定为SendCommandID
这里的选项就是要发送的CommandID - 可通过AutoIt窗口信息工具来识别,在“工具栏”标签页下可以查看命令ID。

一个示例如下:
ControlCommand($hWin, , ToolbarWindow321, SendCommandID, 28721)

其实,不一定用ControlCommand,UDF也可以的啊:
include lt;GuiToolbar.au3;
_GUICtrlToolbar_ClickButton()
_GUICtrlToolbar_ClickIndex()
_GUICtrlToolbar_CommandToIndex()

F. 下面的程序利用AutoIt做自动化测试为什么总会出现错误,希望哪位大侠给知道知道看有没有什么语法错误:

试修改如下:

$file = FileOpen("result.txt", 2) ;==> 这一句前面要加个变量

If $file = -1 Then
MsgBox(4096, "错误", "不能打开文件.")
Exit
EndIf

Dim $username[5] = ["111a2fe", "sw136", "a23eeeeeeeeee", "a233", "a134rt"]
Dim $password[5] = ["123567", "333aaae", "aaaaaaa", "dkdkdkdk", "dddddddd"]
Run("register.exe")
WinWaitActive("用户注册")
For $i = 0 To 4
$a = 0 ;==> 这句可以不要
ControlSend("用户注册", "", 5, $username[$i]) ;==> 注意控件ID是否正确
;GUICtrlSetData(5,$username[$i])
ControlSend("用户注册", "", 7, $password[$i]) ;==> 注意控件ID
;GUICtrlSetData(7,$password[$i])
ControlClick("用户注册", "", 8)
$a = WinGetState("错误信息")
ControlClick("错误信息", "", 2) ;==> 这一句貌似不应该写在这,据猜测,可能是注册失败才有这个窗口出现
;MsgBox(0,"aa",$a)
If $a <> 0 Then
WinWaitActive("错误信息")
ControlClick("错误信息", "", 2)
FileWrite($file, "用户名: " & $username[$i] & @CRLF & "密码:" & $password[$i] & @CRLF & "right" & @CRLF) ;==> 修改

;MsgBox(0,"bb",$a)
Else
WinWaitActive("注册成功")
ControlClick("注册成功", "", 2)
;MsgBox(0,"cc",$a)
EndIf
Next

G. Autoit 定位到SysTreeView32控件内容

问题解决了吗?我就是用autoit做的程序,自动盯盘,自动网格买卖。还是不错的

H. AutoIt 与 AutoHotkey 有何异同是选择前者还是后者

我是先接触AutoIt的,但时间还不算久。我看了一些介绍, AutoHotkey 是从AutoIt分支出来的,部分开发人员是原来AutoIt的开发人员,这两者有许多方面非常相似,我也看了两者的帮助,确实如此,目前我认为比较不一样的就是AutoIt所用的语言类VB,而AutoHotkey 所用的语言类C++或JAVA。 实际上我比较熟悉的是C++和JAVA类语言,看上去简洁容易理解,而且本人接触C++语言有很长的时间,所以比如FLASH所用的AS语言,其它J脚本类的也很容易阅读。而对于类VB的我看上去不是不能理解,而是比较吃力,所以我在先接触AutoIt时感觉这语言比较杂乱,特别是endif这些比较罗嗦的语法比较讨厌。既然是我比较不喜欢VB类,那为什么我选择了AutoIt呢?原因很简单,本来只是想找一种编程工具写个工具,但又不想用比较复杂的VC++编写,因为使用VC++与MFC写图形界面我反而没什么接触,所以想找一比较快速的脚本语言写个图形界面程序,结果找到的是AutoIt而不是AutoHotkey,所以就先用了几天时间。因为AutoIt与AutoHotkey有根源,所以通过一些介绍关注了下AutoHotkey,知道非常相似。其实以前就有下载过这样的编程工具,但看名字,可能只是针对写游戏键盘鼠标自动化用的吧!但现在看来,似乎不是那么回事,原来看介绍还可以实现类似于AutoIt中我需要的功能,比如文件目录操作,GUI等。 目前对阅读VB类已经不成问题,已经能实现一些功能,现在开始做我的工具。但我的仍然不改我的印象,视觉上,代码还是太乱了。 如果是这样,不知道有没有必要转向类C++的AutoHotkey?毕竟我与某些评论的观点一致,AutoIt比较失败的就是使用了类VB的语言。

I. 如何单击使用的autoit或windows ui自动化的应用程序按钮

使用python借助pyautoit模块,可以实现windows的自动化
脚本如下:
autoit.control_click('Demo', '登录')
具体就要看你的程序是什么情况了

热点内容
理财质押什么时候可以到期 发布:2025-05-21 05:00:49 浏览:238
末日基金怎么撤销 发布:2025-05-21 04:30:00 浏览:889
如何导入股权激励员工 发布:2025-05-21 04:24:54 浏览:972
中国科技公司排名50股票码 发布:2025-05-21 04:24:11 浏览:226
炒股把家底赔完怎么办 发布:2025-05-21 03:52:17 浏览:702
月鑫理财什么时候到账 发布:2025-05-21 03:44:00 浏览:247
好的股票交易记录软件 发布:2025-05-21 03:40:51 浏览:421
期货如何靠概率赚钱 发布:2025-05-21 03:14:38 浏览:227
北京新纽科技股票 发布:2025-05-21 03:13:54 浏览:196
股权激励如何办理工商注册 发布:2025-05-21 03:04:40 浏览:30