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()
相关推荐
xiaoxiangsiyan13 分钟前
LNMP + Redis Sentinel 高可用架构部署手册(续)
运维·网络·数据库·redis·缓存·架构·sentinel
BullSmall35 分钟前
scanoss-engine 本地最简部署 & 扫描命令(Linux/Anolis OS)
linux·运维·服务器
陈聪.1 小时前
Keepalived 高可用集群:从原理到企业级实践
运维
bellus-1 小时前
Ubuntu 26.04 Miniforge3 安装与配置完整指南
linux·运维·ubuntu
575771 小时前
户外净水器过滤效果怎么看:对照孔径、除菌率和认证三项再下单
运维·服务器
瞬间&永恒~1 小时前
【Docker】(四)Namespace 详解
运维·docker·容器
爱喝水的木子2 小时前
自建RustDesk私有服务器全攻略
运维·服务器
jieyucx2 小时前
【服务器特性】结合服务器/CMS:解析漏洞实战
运维·服务器·web安全·文件上传
九硕智慧建筑一体化厂家2 小时前
无线动能开关|烘焙后厨防潮免布线照明控制方案
运维·笔记·智慧城市
三言老师2 小时前
free查看内存与缓存状态实操
运维·服务器·网络·centos