我正在尝试使用curl捕获生成的图像,但是当我运行
|
我得到了错误
curl https://thispersondoesnotexist.com/ > image.jpg
,并下载了0个字节。
添加--http1.1标志没有帮助:
curl: (92) HTTP/2 stream 0 was not closed cleanly: INTERNAL_ERROR (err 2)
在站点上,我无法弄清楚它是如何将图像传输到浏览器的-我在调试器中看到了它,但它似乎并不是我可以实际写入的输出。
我不是要经营一个巨魔农场或其他任何东西,这只是一个为面部分析生成一些随机图片的项目。
答案 0 :(得分:0)
看起来像他们拒绝curl作为用户代理,因此转到chrome,打开网络面板,然后重新加载以查看请求。这对我来说是这样的:
curl 'https://thispersondoesnotexist.com/image' -H 'authority: thispersondoesnotexist.com' -H 'cache-control: max-age=0' -H 'dnt: 1' -H 'upgrade-insecure-requests: 1' -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36' -H 'sec-fetch-mode: navigate' -H 'sec-fetch-user: ?1' -H 'accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3' -H 'sec-fetch-site: none' -H 'referer: https://thispersondoesnotexist.com/' -H 'accept-encoding: gzip, deflate, br' -H 'accept-language: en-US,en;q=0.9' --compressed --output image.jpg