V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
lucienlin18
V2EX  ›  程序员

如何通过 playwright 获取这种防盗链的图片?

  •  
  •   lucienlin18 · 19 天前 · 1794 次点击

    playwright 通过有头浏览器能够获取文字内容,但是图片设置了防盗链

    WARNING Failed to download image https://file.xxx.com/filex?fileId=OSS-33a46d7d-ed63-xxx-xx-xxxx.jpg&acl=xxx&timestamp=13333333&uid=xxxx&fileName=&process=image/resize,w_1000,h_4096,m_lfit: Locator.click: Timeout 30000ms exceeded. Call log: waiting for get_by_text("Save image")

    这个图片实际上是存在 oss 上的,通过浏览器 F12 看到地址是这样的,但是 python 调用的是是看不到这个地址的 https://xxxx.oss-xxx.aliyuncs.com/xxx/OSS-xxxxx-xxxx.jpg?Expires=13333333&OSSAccessKeyId=xxxxx&Signature=xxxx

    如何通过 playwright 下载到这个照片?

    4 条回复    2025-05-26 10:10:10 +08:00
    r6cb
        1
    r6cb  
       19 天前
    把完整请求头一起发过去,不是只访问链接
    512357301
        2
    512357301  
       19 天前 via Android
    你在追踪下,这种地址一般是存在属性里吧,或者通过 ajax 请求得到的,否则页面怎么加载出来。
    SanjinGG
        3
    SanjinGG  
       18 天前
    应该是有同源策略,只有他们网站可以访问。把图片转下 base64 ,然后再下载试试
    gogoby
        4
    gogoby  
       18 天前
    启用 cdp network / fetch 方法 去抓 response (直接通过浏览器)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2571 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 01:22 · PVG 09:22 · LAX 18:22 · JFK 21:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.