0

我需要将随机图像从网站保存到我的计算机。我知道如何使用 PHP 保存图像(我使用 curl),但我无法正确保存随机(动态)图像。

假设网站 (somesite.com) 有一些文本内容和 IMG 标签,看起来像<img src='somesite.com/image.php'>并显示随机图像。如果我使用浏览器,我可以简单地右键单击并选择“保存图像”,这样我在屏幕上看到的图像就会被保存(它们都是一样的)。

但是,如果我使用 curl 打开 somesite.com(因为我还需要抓取图像描述),然后再次使用 curl 打开 somesite.com/image.php,图像会有所不同(因为每次都选择一个随机的用户请求 image.php)。

简而言之,如果 somesite.com 有文本“这是玫瑰”,image.php 将显示一朵玫瑰,并且在浏览器上一切正常。但是如果我使用 curl 打开网站,它可能有文本“这是郁金香”,当我请求 image.php 保存该图像时,将显示另一个图像。如何获得与发送第一个请求时显示的完全相同的图像?

我想它应该被缓存在某个地方,还是什么?

4

1 回答 1

0

它没有缓存在您最有可能到达的任何地方。最好的方法是将随机化放入调用文件中,例如<img src='somesite.com/image.php?data=<?php echo $someRandomValue; ?>'>. 然后,每次使用相同的数据参数请求此图像时,您将使用此数据参数生成相同的图像。当然:如果有多个变量影响图像,您可以在 url 中添加更多参数,或者简单地将它们放在一个数组中并通过 base64 编码传递。

于 2013-08-20T14:15:22.133 回答