Au travail, nous devons faire notre propre gestion de temps et être contrôlé de temps en temps. Parce que j'oublie toujours, quand je prends mes pauses et combien de temps, j'ai décidé d'écrire un script Python qui fonctionne au démarrage et écrit l'heure actuelle après que je n'ai pas déplacé ma souris ou tapé sur mon clavier pendant 5 minutes. Je ne sais tout simplement pas, comment exécuter ma fonction écrite après une certaine période écoulée depuis la dernière entrée. P> P>
3 Réponses :
Ce serait quelque chose comme P> pynput code> semble être pour vous. Voir Docs
from pynput import mouse
with mouse.Listener(on_click=reset_timer,
on_move=reset_timer,
on_scroll=reset_timer) as listener:
begin_timer()
Un autre moyen peut être de définir votre écran de moniteur (options d'économiseur d'écran) après 5 minutes, puis écrivez un script qui détecte l'état du moniteur. P>
Voici un exemple sur la façon de faire cela: Comment Vérifiez si l'affichage de l'appareil est activé / éteint avec Python? P>
codage heureux p>
Ce n'est peut-être pas la solution la plus propre, mais je suis un programmeur novice python, je suis assez heureux avec ça. Importer DateTime de la structure d'importation CTYPES, Windll, C_uint, Taillef, Byref Heure d'importation
class LASTINPUTINFO(Structure): _fields_ = [ ('cbSize', c_uint), ('dwTime', c_uint), ] def get_idle_duration(): lastInputInfo = LASTINPUTINFO() lastInputInfo.cbSize = sizeof(lastInputInfo) windll.user32.GetLastInputInfo(byref(lastInputInfo)) millis = windll.kernel32.GetTickCount() - lastInputInfo.dwTime return millis / 1000.0 while 1: GetLastInputInfo = int(get_idle_duration()) if GetLastInputInfo >= 10: start = time.time() startTime = datetime.datetime.now() while GetLastInputInfo >= 10: GetLastInputInfo = int(get_idle_duration()) if GetLastInputInfo < 10: end = time.time() time_elapsed = end - start + 10 if time_elapsed >= 10: with open("C:\\Users\\[USER]\\Desktop\\time.txt", 'w') as f: f.write('Pause from ' + str(startTime) + ' to ' + str( datetime.datetime.now()) + '\nDuration: ' + str(time_elapsed))