一、input标签

对于通过input标签实现的上传功能,可以将其看作是一个输入框,即通过send_keys()指定本地文件路径的方式实现文件上传

二、非input标签

需要通过一些和系统交互的方式去完成上传操作,比如通过pywin32,pywinauto 或者是pyautogui这些第三方库进行操作。

方法一:pywin32,通过模拟键盘敲击的方式实现,代码如下:

from selenium import webdriver
import win32com.client
import timedriver = webdriver.Chrome("D:\\tool\selenium\chromedriver.exe")
driver.implicitly_wait(5)
driver.get("https://tinypng.com/")# 触发上传文件的操作
driver.find_element_by_css_selector("#top .icon").click()
sh = win32com.client.Dispatch("WScript.shell")
time.sleep(3)
sh.Sendkeys("D:\\test\script\study\seleniumStu\day6\qqjt.png\n")  # 无目标的,单纯的敲击键盘driver.quit()

方法二:pywinauto

from pywinauto.keyboard import send_keystime.sleep(3)
send_keys(r'd:\1.png')
#回车操作
send_keys('{VK_RETURN}')

方法三:pyautogui

import pyautoguitime.sleep(3)
pyautogui.typewrite(f'"d:\1\png" "d:\2\png"')#有时候会与系统输入法冲突,可以改成大写的D试试pyautogui.keyDown('enter')
pyautogui.keyUp('enter')

【python】【selenium】Selenium 自动化如何进行文件上传?相关推荐

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

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

  2. python 文件上传 web_pythonweb自动化三种文件上传方法

    文件上传三种方式: (一)查看元素标签,如果是input,则可以参照文本框输入的形式进行文件上传 方法:和用户输入是一样的,使用send_keys 步骤:1.找到定位元素,2,输入文件路径 ele=d ...

  3. python scoket、SocketServer简单实现文件上传下载

    2019独角兽企业重金招聘Python工程师标准>>> 1.描述 实现任何位置文件下载到客户端执行的当前目录下 实现任何位置文件上传到服务端执行的当前目录下服务端: #!/usr/b ...

  4. bottle 文件服务器,python bottle 框架基础教程:文件上传 | linux系统运维

    文件上传,需要注意的是前端html的form表单中,要添加 enctype="multipart/form-data"属性,否则无法上传文件.在后端,用request.files方 ...

  5. python爬虫:Multipart/form-data POST文件上传详解

    简单的HTTP POST 大家通过HTTP向服务器发送POST请求提交数据,都是通过form表单提交的,代码如下: <form method="post"action=&qu ...

  6. 用fme和Python-selenium模块实现网站表格批量自动化录入和文件上传

    目录 前言 一.selenium是什么? 二.需要配置环境 1.fme 2.python需要的模块(selenium,pywin32) 3.需要安装的浏览器已经对应版本的浏览器驱动 三.项目实战 1. ...

  7. Python攻克之路-网络编程(文件上传实现思路)

    需求:一个server,一个client,实现client把某个文件传到server中某个目录中 分析:实际是实现数据传输,设定一个命令和一个参数(上传的内容),连接后,让用户输入命令和要传送的内容, ...

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

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

  9. python flask上传文件_flask 文件上传(单文件上传、多文件上传)--

    文件上传 在HTML中,渲染一个文件上传字段只需要将标签的type属性设为file,即. 这会在浏览器中渲染成一个文件上传字段,单击文件选择按钮会打开文件选择窗口,选择对应的文件后,被选择的文件名会显 ...

  10. 使用SpringMVC 的MultipartFile文件上传时参数获取的一个坑

    2019独角兽企业重金招聘Python工程师标准>>> 最近在做文件上传,看到SPRINGMVC以做了一些封装,就打算以使用它来做上传.但马我就遇到了接收不到文件参数的问题.都是按照 ...

最新文章

  1. datagridview java_仅更新datagridview中的一个单元格
  2. 两种简单高效的“反人脸识别”方法
  3. 升级总代分享思路_旧笔记本光驱换SSD,升级内存,改造散热还能再战5年
  4. python模块:数字处理
  5. 永久使用卡巴斯基的方法
  6. Mybatis-Plus 自定义 id 生成器
  7. Android 常用抓包工具介绍之Charles
  8. 60分钟带你入门iOS开发
  9. APUE C内存空间详解图
  10. URI和URL差别以及相对路径和绝对路径的差别
  11. 微信小程序游戏开发│石头剪刀布游戏(附源码)
  12. 生产制造业如何谋求数字化转型?需要哪些信息化系统做支撑?
  13. OpenStack历史知识
  14. 史上最好最全最牛的安全驾驶经验(不看必后悔)
  15. 施耐德电气推出适用于边缘计算的微型数据中心机柜
  16. Android--简单电子木鱼开发详解
  17. 河北工业大学 计算机导师,河北工业大学
  18. 用LaTeX写论文时如何加资助信息
  19. TCP面向连接中的“连接”究竟是什么,可靠与不可靠
  20. scholarscope不显示影响因子_帮研网—科研共享平台——新版Pubmed显示影响因子并设置筛选过滤器...

热门文章

  1. xLang 的类型转换
  2. 局域网网络流量监控_网工必知:用于监控企业网络的10款最佳工具,拿走!不谢!...
  3. python操作word文档,合并
  4. 服务器开机显示检查电缆,电脑开机显示无VGA电缆是怎么回事,求答!
  5. 微信JSAPI支付返回缺少参数total_fee
  6. Windows 使用 ssh 命令行 通过密钥连接到 云服务器
  7. Mac开发-NSTextView软回车转换为硬回车
  8. MSOCache是什么文件啊?
  9. stream流倒序排序_Stream流排序
  10. python 录制网易云登陆_Github获8300星!用Python开发的一个命令行的网易云音乐