playwright自动化上传附件

需求

自动设置上传头像

过程

  1. 首先保存本地一个文件,例如 aaa.php
bash 复制代码
file_path = files/aaa.png
  1. 获取输入类型为 "file" 的按钮

    file_input_element = page.locator('input[type=file]')

  2. 将本地保存的图片路径赋值

    file_input_element.set_input_files(file_path)

  3. 点击上传按钮

bash 复制代码
page.check("#Upload")

整体代码

python 复制代码
# 导入需要的模块
from playwright.sync_api import Playwright, sync_playwright

# 启动Chromium浏览器
browser = browser.start()

# 打开一个页面
page = browser.new_page()

# 跳转到需要上传文件的页面
page.goto('https://www.example.com/upload')

# 访问页面上的input标签,并为其设置要上传的文件名称
file_input_element = page.locator('input[type=file]')
file_input_element.set_input_files(file_path)

# 等待上传完成
page.wait_for_load_state()

# 点击上传按钮上传附件
page.check("#Upload")

# 关闭浏览器
page.close()
browser.close()
相关推荐
xhbh666几秒前
Linux端口转发到外网完全教程:iptables DNAT+SNAT实现内网服务暴露
linux·运维·服务器·网络·ip·流量转发·端口流量转发
Q_4582838682 分钟前
基于 JTT1078MediaServer 的集群方案实践(Nginx + 溯源模式)轻量级车联网音视频集群
运维·服务器·nginx·架构·音视频·交通物流
承渊政道8 分钟前
数据删了不等于销毁:KingbaseES敏感数据物理擦除实战指南
运维·服务器·数据库·数据仓库·安全·oracle·业界资讯
精益数智小屋8 分钟前
什么是进销存库存表?进销存库存表包含哪些内容?
大数据·运维·数据库·人工智能·安全
米高梅狮子16 分钟前
14.K8s 中部署 LNMP 架构 ECShop 电商
云原生·容器·架构·kubernetes·自动化
sbjdhjd19 分钟前
Docker 安全优化实战手册(企业级硬核版)
linux·运维·docker·云原生·容器·eureka·kubernetes
爱吃苹果的梨叔20 分钟前
2026年清虹分布式坐席系统如何破局技术内卷与运维成本困局
运维·分布式
终端行者20 分钟前
Jenkins Pipeline 构建后推送到Nexus制品库 jenkins 如何连接Nexus?企业级实战 --中 Jenkins 连接Nexus 实战
运维·ci/cd·docker·jenkins·nexus
张小姐的猫23 分钟前
【Linux】多线程(中)—— 线程控制接口 | 线程库 | 线程局部存储
linux·运维·服务器
天下财经热24 分钟前
工业搬运机器人和AMR领域哪些品牌更值得关注?2026年工业物流自动化选型指南
人工智能·机器人·自动化