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()
相关推荐
XiaoMaqqqq9 小时前
市面上正规的IP驱动产业新场景新工具哪家强
运维·python·网络协议·tcp/ip
huainingning9 小时前
RJ SW Console口忘记密码处理方法
linux·运维·服务器
布裘9 小时前
【银河麒麟】桌面系统循环登录,无法进入桌面?
linux·运维·服务器
慧都小项9 小时前
程序到了Linux才出错?用CLion把调试接到目标环境
linux·运维·服务器
Lsetea10 小时前
OpenSSL verify报unhandled critical extension:error 34与关键扩展排查
运维·https·ssl证书·openssl·证书链
guo_wen_qiang10 小时前
docker的备份与迁移
运维·docker·容器
Ruiery12 小时前
Linux 6.6内核内存管理深度解析(一):物理内存初始化 — memblock 怎么把内存交给 buddy
linux·运维·服务器
Android系统攻城狮12 小时前
Linux Gstreamer深度解析之gst_audio_encoder_get_frame_max调用流程与实战(五十九)
linux·运维·服务器·gstreamer音视频·音视频进阶·gstreamer音视频进阶
忆挽篱笙歌13 小时前
makefil
linux·运维·服务器
程序员老赵14 小时前
Docker 部署 Dolibarr:轻松搭建开源 ERP/CRM 平台
运维·前端·后端