zoukankan      html  css  js  c++  java
  • Python+selenium(Autolt实现上传)

    AutoIt是一个使用类似BASIC脚本语言的免费软件,被设计用来进行Windows GUI的自动化测试。它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现自动化任务。

    此次小编介绍的是利用AutoIT编写合适的脚本,然后将脚本编译成可执行文件,在自动化实现时,直接调用此脚本实现文件上传。

    案例:从编写好的upfile.html页面完成文件上传操作。

    upfile.html

    <html>
    <head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    <title>upload_file</title>
    <link href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"/>
    </head>
    <body>
        <div class="row-fluid">
            <div class="span6 well">
            <h3>upload_file</h3>
                <input type ="file" name ="file" />
            </div>
        </div>
    </body>
    <script src="http://cdn.bootstraps.com/bootstrap/3.3.0/css/bootstrap.min.js"></script>
    </html>

     1.AutoIt下载安装

    官方网址:https://www.autoitscript.com/site/

    从网站上下载并安装完成后,可以看到如图所示:

    AutoIt v3菜单介绍:

    AutoIt Windows Info:用于识别Windows控件信息

    Compile Script to.exe:用于将AutoIt生成exe执行文件

    Run Script:用于执行AutoIt脚本

    SciTE ScriptEditor:用于编写AutoIt脚本

    2.浏览器打开upfile.html,点击“选择文件”按钮,然后打开AutoIt Windows Info工具,鼠标单击Finder Tool,看到一个类似小风扇的图标,按住鼠标左键,拖动到要识别的控件上(文件名输入框以及“打开按钮”)

    我们可以通过AutoIt Windows Info获得以下信息:

    窗口title:“文件上传”,标题class:#32770

    文件名输入框class:“Edit”,Instance:“1”,ClassnameNN:“Edit1”

    打开按钮class:“Button”,Instance:“1”,ClassnameNN:“Button1”

    3.根据AutoIt Windows Info的信息,打开SciTE Script Editor编辑器,编写AutoIt脚本

    ControlFocus("文件上传", "","Edit1")
    WinWait("[CLASS:#32770]","",10);
    ControlSetText("文件上传", "", "Edit1", "D:upload_file.txt");
    Sleep(2000); ControlClick("文件上传", "","Button1");

    脚本附注;

    ControlFocus ( "title", "窗口文本", controlID): 设置输入焦点到指定窗口的某个控件上

    WinWait ( "title题" , "窗口文本" , 超时时间 ):  暂停脚本的执行直至指定窗口存在(出现)为止

    ControlSetText ( "title", "窗口文本", controlID, "新文本" ):   修改指定控件的文本

    Sleep ( 延迟 ):  使脚本暂停指定时间段

    ControlClick ( "title", "窗口文本", 控件ID , 按钮 , 点击次数 ) :  向指定控件发送鼠标点击命令

    编写好脚本后,可以运行看看,通过“Tools”-->“Go”,或者“F5”。(注意,运行时,文件上传窗口必须打开)

    4.保存脚本为“upfile.au3”文件,然后打开Compile Script to.exe工具,将其生成exe可执行文件。

    点击“Browse”,选择“upfile.au3”文件,再点击“Convert”按钮,提示“Completed”即生成成功。

    5.打开Pychorm,编辑Python代码

    from selenium import webdriver
    from time import sleep
    import os
    
    driver = webdriver.Firefox()
    
    # 打开上传功能页面
    driver.get(r'E:python_scriptWebdriverupfile.html')
    
    # 单击打开上传窗口
    driver.find_element_by_name("file").click()
    # 调用upfile.exe程序
    os.system(r"E:python_scriptWebdriverupfile.exe")
    sleep(3)
    
    driver.quit()

    运行脚本,就可以实现文件上传。

  • 相关阅读:
    Fatal error: Call to undefined function json_decode()解决办法
    LoadRunner 压力测试使用基础步骤
    访问网站出现 HTTP ERROR 500 该网页无法正常运作
    Linux Crontab Shell脚本实现秒级定时任务
    Linux下修改MySQL数据表中字段属性
    PHP实现微信企业付款
    Yii1.1框架实现PHP极光推送消息通知
    nginx的The page you are looking for is temporarily unavailable错误解决办法
    Linux提示删除文件cannot remove `文件名': Operation not permitted
    Linux常用软件启动、停止、重启命令
  • 原文地址:https://www.cnblogs.com/NancyRM/p/8257358.html
Copyright © 2011-2022 走看看