Schnell bekommen Sie die Farbe der Pixel auf dem Bildschirm in Python auf Windows 7

Ich brauche, um die Farbe der Pixel auf dem Bildschirm oder das aktive Fenster ist, und ich so tun müssen schnell. Ich habe versucht, mit win32gui und ctypes/windll, aber Sie sind viel zu langsam. Jedes dieser Programme erhält die Farbe von 100 Pixel:

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())

und

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())

Jede dieser dauert etwa 1,75 Sekunden. Ich brauche ein Programm wie dieses zu nehmen, weniger als 0,1 Sekunden. Was macht es so langsam?

Arbeite ich mit Python 3.x und Windows 7. Wenn Ihre Lösung erfordert, dass ich die Verwendung von Python 2.x, bitte link mich zu einem Artikel, der zeigt, wie man Python 3.x und 2.x beide installiert. Ich schaute, aber konnte nicht herausfinden, wie dies zu tun.

Dank!

InformationsquelleAutor dln385 | 2010-09-27
Schreibe einen Kommentar