07-06-2017, 06:46 PM
Hola, Buenas tardes, primero decir que soy nuevo en el lenguaje de python y el motivo de este post es para una duda que tengo con respecto a una librería de python que es PIL / PILLOW. La situación es la siguiente: Quiero hacer una programa que saque una captura del escritorio de una zona determinada cada cierto tiempo y despues poder usarla en PIL para aplicar unos filtros, pero cuando aplico el comando Imagen.Open("aqui es donde quiero poner la variable") me sale error, ya que solo permite la dirección de un archivo y me gustaría saber de alguien mas experimentado si me podría aclarar la duda de si ese es el comando adecuado, o hay otra forma de cargar directamente la variable, sin necesidad de pasarla por archivo.
Trabajo en windows 10, python 2.7 y mi IDE es Pycharm
PD: he intentado sacar la captura con otro paquete llamado pyscreenshot, pero he tenido algunos problemas, ya que se me queda colgado el programa, pero bueno eso es otro asunto.
Un saludo y muchas gracias por vuestra atención.
Trabajo en windows 10, python 2.7 y mi IDE es Pycharm
Código:
import autopy
import pyscreenshot #He intentado con pyscreenshot para sacar la captura, pero se me cuelva el código
from PIL import Image
def capturas():
rect = ((364, 642), (40, 40))
Foto = autopy.bitmap.capture_screen(rect) #uso el paquete autopy para sacar una captura de pantalla de
#una zona determinada
Foto2 = Image.open(Foto) #quiero usar la variable donde se guardo la captura y abrirla
#con PIL es donde tengo el problema
img = Foto2.Image.convert('L') #aplico el filtro de grises a la imagen abierta con PIL
img.show() #Muestro la imagen con el filtro aplicado
capturas()
PD: he intentado sacar la captura con otro paquete llamado pyscreenshot, pero he tenido algunos problemas, ya que se me queda colgado el programa, pero bueno eso es otro asunto.
Un saludo y muchas gracias por vuestra atención.