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()
相关推荐
2501_9404140828 分钟前
搞了一次平台工程,我把本地的 Docker Desktop 彻底卸了
运维·docker·容器
我想吃烤肉肉28 分钟前
Playwright中page.locator和Selenium中find_element区别
爬虫·python·测试工具·自动化
heze0940 分钟前
sqli-labs-Less-6自动化注入方法
mysql·网络安全·自动化
看见繁华44 分钟前
Linux 交叉编译实践笔记
linux·运维·笔记
heze091 小时前
sqli-labs-Less-8自动化注入方法
mysql·网络安全·自动化
咕噜企业分发小米1 小时前
直播云服务器安全防护有哪些最新的技术趋势?
运维·服务器·安全
tianyuanwo1 小时前
深入解析CentOS 8中NetworkManager重启后DNS配置被覆盖的机制与解决方案
linux·运维·centos·dns
cly11 小时前
Ansible自动化(十五):加解密详解
运维·自动化·ansible
程序员zgh1 小时前
Linux 系统调用
linux·运维·服务器·c语言·c++·系统安全
DX_水位流量监测1 小时前
无人机测流之雷达流速仪监测技术分析
大数据·网络·人工智能·数据分析·自动化·无人机