Pregunta

Tengo un script php que genera una imagen aleatoria cada vez que se llama.Entonces, cuando abro el script en un navegador web, muestra una imagen y, si actualizo, aparece otra imagen.

Estoy intentando capturar la imagen correcta al visitar el sitio web a través de una línea de comando (a través de mecanizar).Utilicé urllib2.urlopen(...) para capturar la imagen, pero cada vez que lo hago obtengo una imagen diferente.Quiero poder capturar constantemente la misma imagen.¿Cómo puedo lograr eso?

¡Gracias!

ACTUALIZAR:He aquí un ejemplo de lo que estoy hablando.Si recarga esta imagen en un navegador web, cada vez aparece una imagen diferente.Si hace clic derecho y guarda, obtendrá la imagen correcta.Y si sigues haciendo eso, seguirás obteniendo la imagen correcta...PERO, ¿cómo se hace eso desde una línea de comando?

http://www.biglickmedia.com/art/random/index.php

¿Fue útil?

Solución

Lo más probable es que su imagen se almacena en caché por el navegador establecer lo siguiente:

<?php
      header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
      header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
?>

y cada vez que la generación de la imagen utilizar otro nombre para él (se puede hacer mediante la adición de milisegundos a un original).

Otros consejos

Puede intentar almacenamiento en caché de la imagen generada en el disco y ponerlo a disposición del usuario a través de un enlace diferente.

Después de generar la imagen, moverlo a una carpeta temporal, donde el usuario puede descargar la imagen estática generada. Después de que se haya descargado, borrar para hacer espacio.

Cuando se guarda desde el navegador, no se va de vuelta al servidor para volver a la petición de la imagen, se está sirviendo la que se está mostrando desde su caché.

Su cliente de línea de comandos tiene que hacer la misma cosa. Es necesario guardar la imagen cada vez que lo solicite. Luego, cuando se encuentre el que desea mantener necesita copiar la imagen ya guardada en donde quiera que se desea mantener de forma permanente.

Si el servidor está sirviendo siempre una nueva imagen al azar que no hay nada más que pueda hacer.

Coge una vez y almacenar en caché en su lado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top