1.对于autoit的环境配置和安装我就不多说了,网上一搜一大堆。

2.我本来使用selenium对于web进行自动化测试的,但是selenium对于flash也是无能为力,我在网上找了很长时间,对于selenium来说必须要对flash进行重新build来通过js进行操作,但是这是很久以前的方法,我也不清楚是否适用,所以选择autoit进行模拟人工操作是个不错的选择。

3.根据我在网上查找的资料要用autoit对于Firefox进行直接操作,必须要适用FF.au3,对于这样的操作我在网上找到的资料如下:

Autoit3 本身有内置的用户自定义函数IE.au3,只限于IE浏览器,如果是Firefox浏览器需要另外自定义函数。

找了很多资料发现有个FF.au3的自定义函数,下载地址 http://www.autoitscript.com/forum/topic/95595-ffau3-v0601b-10/

这个是对Firefox浏览器的自定义函数库,这样就可以通过Firefox访问网页。

实现步骤和发现的问题:

1. 下载FF.au3,放在脚本同目录下,也可以放在AutoIt3安装目录下的,比如: C:\Program Files\AutoIt3\Include。

2. 在Firefox浏览器上需要安装一个插件 MozRepl,下载地址 https://addons.mozilla.org/en-US/firefox/addon/mozrepl/

点击直接下载,Firefox会提示安装,安装完了之后要打开,方法是:【工具】->【MozRepl】->【Start】,每次打开浏览器一定要start,否则不能通讯。

MozRepl 会打开一个端口,默认4242,这样AutoIt3脚本通过windows api 实现与Firefox浏览器通讯,操作浏览器实现自动化。

3.编写脚本,从在线文档上面copy一段代码,FF.au3在线文档地址 http://english.documentation.ff-au3.thorsten-willert.de/

从在线文档上面copy第一个demo运行

#include "FF.au3"
_FFStart("http://ff-au3-example.thorsten-willert.de/")

If _FFIsConnected() Then
    Sleep(2000)
    _FFAction("presentationmode", True)
    Sleep(2000)
    _FFOpenURL("http://www.baidu.com")
    Sleep(2000)
    _FFAction("back")
    _FFAction("presentationmode", False)
    Sleep(2000)
    _FFOpenURL("chrome:bookmarks")
    Sleep(2000)
    _FFAction("alert", "Bye bye ...")
    _FFQuit()
EndIf

发现报错:

! Au3check doesn't support input files encoded as UTF8 with BOM: D:\AutoIt\FF.au3
"D:\AutoIt\ftest.au3"(3,54) : error: _FFStart(): undefined function.

..........

这个问题是因为FF.au3这个文件的编码是UTF8 with BOM,这是官方推荐的编码格式,但是Au3check不知道为什么不支持,解决的办法是在文件头上面加上:

#AutoIt3Wrapper_Run_Au3Check=n 。

4. 加上上面那句好了,可以编译没有报错,可是不能正常工作,查看控制台信息,显示错误信息:

__FFStartProcess ==> General Error: Error reading registry entry for FireFox.
HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox\*CurrentVersion*\Main\PathToExe

4.而我本身习惯适用selenium,所以对于页面的操作设想,用selenium打开网页,在用autoit定位窗体,同样可以实现

鼠标坐标的话可能需要根据实际情况调整。这些数据可以通过拖动右边的工具上的Finder Tool 来获得。

5.直接使用autoit自带的编辑器运行会报错,我也不知道什么原因,适用自带的工具编辑成EXE来运行就没有问题了

6.其他的语法什么的可以在http://www.jb51.net/shouce/autoit/这个网站上查看。

转载于:https://www.cnblogs.com/konghailei/p/6769124.html

autoit对于web中flash控件的操作相关推荐

  1. MFC中常见控件的操作

    1.下面的代码用于获取屏幕的长度和宽度  int iWidth = GetSystemMetrics(SM_CXSCREEN); // int iHeight = GetSystemMetrics(S ...

  2. qt中提升控件的操作

    我的代码里面自己写了一个类myview,继承自QGraphicsView,然后就把拖到界面上的QGraphicsView控件通过提升控件的方式替换成自己的myview类. 先在工具栏拖一个QGraph ...

  3. [转]在Winform(C#)中使用Flash控件

    关于添加Flash控件这里就不介绍了,网上能查到一大堆 VS2005在添加Shockwave时很多人都碰到一个这个问题,就是会说ActiveX注册失败 VS2003没有这样的问题,也不知是什么原因 没 ...

  4. 怎样在VS2005中添加Flash控件

    安装完Flash播放器控件后,我们也知道了,控件安装的位置,本例为C:/Windows/System32/Macromed/Flash. 但是在VS2005开发过程中,如何将其变为像Button控件一 ...

  5. VS2010中添加Flash控件

     一.准备工作 第一步:下载并安装Adobe Flash Player. 从官方网站(http://get.adobe.com/cn/flashplayer/)上下载最新的Flash Player ...

  6. 怎样在Delphi中屏蔽Flash控件的右键弹出菜单

    关于如何屏蔽Flash控件的右键菜单的问题有很多人问过,也有很多人回答,基本上都是说拦截 Application消息,或者继承一个新的控件,重载MouseDown消息,第一种解决办法,好象是简单 些, ...

  7. .net dataGridView当鼠标经过时当前行背景色变色;然后【给GridView增加单击行事件,并获取单击行的数据填充到页面中的控件中】...

    1.首先在前台dataGridview属性中增加onRowDataBound属性事件 2.然后在后台Observing_RowDataBound事件中增加代码 protected void Obser ...

  8. MFC工程使用flash控件

    利用flash可以作出很漂亮的动画,想不想让自己的程序也有这样漂亮的界面呢?^_^,其实,要做到这点也不难.在这里将介绍怎样把falsh制作的界面嵌入到自己的程序中,并让flash动画和自己的程序进行 ...

  9. Flash控件使用参考手册

    Flash控件 常用的函数一般是:   1.用GotoFrame一类的跳转函数直接控制.在跳转前需要用FrameLoaded检测是否能够跳转.Flash制作中帧是从1开始计算,函数中是从0开始计算. ...

最新文章

  1. SecureCRT窗口输出代码关键字高亮设置
  2. jQuery对下拉框Select操作总结
  3. 计算机学院陈宇,为了纯粹的追求———记计算机学院“物联网”工作室-湖北第二师范学院电子版《湖北第二师范学院报》...
  4. 修改VS2017新建类模板文件添加注释
  5. 实验九 根据材料编程
  6. 解决Eclipse中SVN版本比较中文乱码问题
  7. 如何维护笔记本电脑的电池
  8. centos桥接模式怎么联网_今日回收 | 互联网+废品回收模式是怎么兴起的呢?
  9. Object.keys() Object.values()
  10. MSSOAP与WebService
  11. jquery怎么判断不同的字显示不同的颜色_不知道怎么封装代码?看看这几种设计模式吧!...
  12. C#实现中国天气网JSON接口测试
  13. 图形数据库 Neo4j(2) ----Java
  14. vmware8.0.4序列号及汉化包安装
  15. android设置wifi蓝牙共享文件,无需互联网或蓝牙即可通过WiFi通过android共享文件...
  16. 2020年最好用的几个PHP开发工具推荐
  17. 阿里云OSS 图片处理
  18. 常用的设计模式(七)——门面设计模式
  19. python学习===从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止。...
  20. 敏捷开发培训后的感想

热门文章

  1. 红旗linux 龙芯,红旗Linux龙芯版上线
  2. 考研英语 - word-list-46
  3. 问大家 ArrayList 是按照输入顺序显示的么,如果不是,哪种集合可以实现
  4. 三种地球坐标系的区别
  5. 使用adblock屏蔽网页特定内容,例如微博推广
  6. http://blog.csdn.net/longshenlmj/article/deta
  7. flink worldcount
  8. Linux 命令(198)—— host 命令
  9. 小波分析c语言编程,小波分析算法的公式与C语言实现 - 全文
  10. 广西省南宁市谷歌卫星地图下载