以下实例使用百度搜索框上传文件图片搜索演示文件上传

from selenium import webdriver
import time
from selenium.webdriver import ActionChains
import win32gui
import win32condriver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get('http://www.baidu.com')
# 定位上传文件的元素
img = driver.find_element_by_xpath('//span[@class="soutu-btn"]')
img.click()
time.sleep(2)
choose = driver.find_element_by_class_name('upload-pic')
action = ActionChains(driver)
action.click(choose).perform()# 文件上传操作,固定用法
time.sleep(2)
dialog = win32gui.FindWindow("#32770", "打开")  # 一级窗口
ComboBoxEx32 = win32gui.FindWindowEx(dialog, 0, "ComboBoxEx32", None) #二级窗口
combox = win32gui.FindWindowEx(ComboBoxEx32, 0, "ComboBox", None)  # 三级窗口
edit = win32gui.FindWindowEx(combox, 0, 'Edit', None)  # edit元素
button = win32gui.FindWindowEx(dialog, 0, 'Button', None)  # 打开按钮
time.sleep(1)
# 操作
win32gui.SendMessage(edit, win32con.WM_SETTEXT, None, r'F:\自动化测试学习\python\3_笔记\18-操作.xmind')  # 发送文件路径
time.sleep(1)
win32gui.SendMessage(dialog, win32con.WM_COMMAND, 1, button)  # 点击打开按钮

UI自动化第七讲:winspy+pywin32实现文件上传操作相关推荐

  1. Web自动化文件上传操作_Chrom

    web自动化中适用于Chrom浏览器的文件上传操作: import win32gui import win32con#谷歌浏览器,固定用法 def file_upload(path):dialog=w ...

  2. python上传文件到windows_python自动化-WinSpy+pywin32文件上传操作

    '''百度首页搜索上传图片为例''' #前提条件 1.使用winspy定位绝对路径 #前提条件 2.安装库pywin32 采用pip安装pip install pywin32 或其他途径安装 #1.访 ...

  3. 七牛云 php 服务器,本地文件上传到七牛云服务器示例(七牛云存储)

    # _*_ coding: utf-8 _*_ #--------------------------------------- # 程序:把本地文件上传到七牛云服务器 # 版本:0.1 # 作者:l ...

  4. antd vue表单上传文件_Vue编译出静态文件上传七牛CDN

    Vue作为目前比较流行的前端开发框架,在前后端分离比较时尚的今天异常火热,下面分享下怎么把Vue编译出来的静态文件上传到CDN,在这里主要是七牛云的CDN. Vue项目进行编译 编译命令: npm r ...

  5. 七牛 savekey php,七牛云1:客户端直接上传文件

    最近因为项目要用到七牛云,所以花了点时间整理了一下学习心得. 使用七牛云,第一步当然就是上传文件了,常见的云存储上传文件流程一般有3种: 用户==>业务服务器(你自己的服务器)==>云存储 ...

  6. 网络安全课第七节 文件上传漏洞的检测与防御

    13 文件上传漏洞:种植服务器木马的捷径 上一讲介绍过反序列化漏洞,利用漏洞常可以造成执行代码的严重后果. 从本讲开始将介绍文件上传漏洞,它比反序列化漏洞原理与利用更加简单,但同样可以达到控制服务器的 ...

  7. web自动化文件上传--Pywin32库和WinSpy工具

    一.前言 在做web自动化,遇见上传文件一般有两种情况: 1.如果是input可以直接输入路径的,那么直接调用send_keys输入路径. 2.非input标签的上传,则需要借助第三发工具.如Pywi ...

  8. struts2 文件上传与下载 (初始文件上传的底层技术)——struts2第七讲

    2019独角兽企业重金招聘Python工程师标准>>> 文件上传 struts2 注:本文系作者在看了浪曦的风中叶老师的struts2视频的个人总结,希望能帮助广大struts2的初 ...

  9. 小程序上传图片到七牛云(支持多张上传,预览,删除)

    以下为wxml (使用的vant小程序ui框架,需在json文件里自行引入) <view class='clearFloat'><view class='upload_title'& ...

最新文章

  1. shell批量添加用户
  2. 【还有这种网站?】庆哥终于知道为什么他的数据结构与算法学的那么好了
  3. java ee的小程序_Java EE应用程序的单片到微服务重构
  4. oracle 两表两列数据对比_Oracle、PostgreSQL与Mysql数据写入性能对比
  5. 深入线程池的问题连环炮
  6. Disruptor 创建过程
  7. Android高效率编码-第三方SDK详解系列(三)——JPush推送牵扯出来的江湖恩怨,XMPP实现推送,自定义客户端推送...
  8. VC如何设置默认的调试程序
  9. const VS readonly
  10. 水经注地图下载器为什么叫万能下载器
  11. 电气技术应用和计算机应用,电气技术应用专业介绍 ppt课件.ppt
  12. 移动互联网APP测试流程及测试点
  13. 35岁的程序员:第14章,前奏
  14. 分享一款统计手机使用时间的APP,帮助集中注意力,拒绝手机上瘾,支持双端
  15. 如何在命令行中显示五彩斑斓的“黑”
  16. 响应式网页设计与应用
  17. MySQL 语法整理(2)
  18. 更改netbios计算机名,修改你计算机的Netbios名
  19. 如何利用 Apache APISX 提升 Nginx 的可观测性
  20. 回溯法n后问题(具体代码实现,详细分析)

热门文章

  1. 微信首张身份证”网证“正式发放,坐地铁再也不怕临时检查了!
  2. 中值滤波(matlab自编程实现)
  3. [网播][podcast] Born to MISrepresent 第十五集:Jouston Huang 谈 Nokia N900
  4. ES6知识点整理Promise的应用
  5. 解决cesium中3dtiles模型随视角移动
  6. (部署新java程序,程序报错,需copy的一个包)——java使用siger 获取服务器硬件信息...
  7. python openpyxl读取excel_python 使用openpyxl读取excel数据
  8. c语言学习(常见关键字)
  9. Java 实现 Redis集群操作
  10. 教大家利用QQ网页协议的方式,获取本地登录的QQ号(附代码)