Obtenir rapidement la couleur de certains pixels de l'écran, en Python sur Windows 7

J'ai besoin d'obtenir la couleur de certains pixels de l'écran ou de la fenêtre active, et j'ai besoin de le faire rapidement. J'ai essayé d'utiliser win32gui et ctypes/windll mais elles sont beaucoup trop lents. Chacun de ces programmes obtient la couleur de 100 pixels:

import win32gui
import time
time.clock()
for y in range(0, 100, 10):
    for x in range(0, 100, 10):
        color = win32gui.GetPixel(win32gui.GetDC(win32gui.GetActiveWindow()), x , y)
print(time.clock())

et

from ctypes import windll
import time
time.clock()
hdc = windll.user32.GetDC(0)
for y in range(0, 100, 10):
    for x in range(0, 100, 10):
        color = windll.gdi32.GetPixel(hdc, x, y)
print(time.clock())

Chacun de ces prend environ 1.75 secondes. J'ai besoin d'un programme comme celui-ci pour prendre moins de 0,1 secondes. Qu'est ce qui il si lent?

Je travaille avec Python 3.x et Windows 7. Si votre solution j'utilise Python 2.x, merci de me lier à un article montrant comment avoir Python 3.x et 2.x fois installé. J'ai regardé, mais je ne pouvais pas comprendre comment le faire.

Merci!

OriginalL'auteur dln385 | 2010-09-27