You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Playwright向prnt.sc网站上传图片遇问题求助

解决Playwright上传图片到prnt.sc的按钮定位问题
  • 原代码定位器格式错误:Playwright中类选择器需用.前缀,class=uploader__browse_button应改为.uploader__browse_button。但即便修正,仍可能因按钮是样式化元素(实际触发上传的是隐藏的文件输入框)导致点击失败。

  • 更稳定的上传方案:直接操作页面的文件输入框,无需点击可视化按钮。prnt.sc的上传表单id="fileupload"下包含input[type='file']元素,用Playwright的set_input_files方法可直接完成文件上传,步骤如下:

  1. 等待页面加载完成后,定位到文件输入框;
  2. 调用set_input_files传入本地图片路径;
  3. 无需手动点击按钮,浏览器会自动触发上传流程。

完整代码示例:

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(headless=False, slow_mo=50)
    page = browser.new_page()
    page.goto("https://prnt.sc/")
    # 定位文件输入框
    file_input = page.locator("#fileupload input[type='file']")
    # 替换为你的本地图片路径
    file_input.set_input_files("/path/to/your/image.png")
    # 可根据需求等待上传完成或后续操作
    # page.wait_for_selector(".upload-complete-indicator")
    browser.close()

原因说明:多数网站的可视化上传按钮只是交互入口,实际负责文件选择的是隐藏的input[type='file']元素,直接操作该元素能避开元素可见性、样式变更等问题,比点击按钮更可靠。

内容的提问来源于stack exchange,提问作者Jack9992

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 07:10:11