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

102 天前
 lucienlin18

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 下载到这个照片?

2137 次点击
所在节点    程序员
4 条回复
r6cb
102 天前
把完整请求头一起发过去,不是只访问链接
512357301
102 天前
你在追踪下,这种地址一般是存在属性里吧,或者通过 ajax 请求得到的,否则页面怎么加载出来。
SanjinGG
102 天前
应该是有同源策略,只有他们网站可以访问。把图片转下 base64 ,然后再下载试试
gogoby
102 天前
启用 cdp network / fetch 方法 去抓 response (直接通过浏览器)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1134222

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX