ShatiG
80+
- Katılım
- 10 Ağustos 2022
- Mesajlar
- 129
Dahası
- Reaksiyon skoru
- 43
- İsim
- Kerim Veren
Oyun indikten sonra , pc'yi alıncaya kadar pc boşa çalışıyor
O yüzden biraz da yapay zekadan yardım alarak oyun inince otomatik kapatan kod yaptım
Bunu yapan uygulama bulamadım bana da baya ihtiyaç oluyordu
Kodun özellikleri;
- İnternet kullanımını takip ediyor
- Oyun inerken kullanılan internet kullanımı 0'a düşerse oyunun inmiş olarak kabul ediyor (İlk önce oyunu indirmeye başlatınca bu kod başlatılmalı)
- Sonra da oyun dosya doğrulaması için 1 dk'lık gecikme yapıyor ve sistemi kapatıyor (-s -f -t ile)
( Kapatma için minimum int kullanım değerini ve geciktirme süresi değişiklik gösterebilir kullanıcıya göre )
Basit bir şekilde işlevi bu , 4 kez kullandım hiç sorun yaşamadım, kullanmak isteyen varsa
O yüzden biraz da yapay zekadan yardım alarak oyun inince otomatik kapatan kod yaptım
Bunu yapan uygulama bulamadım bana da baya ihtiyaç oluyordu
Kodun özellikleri;
- İnternet kullanımını takip ediyor
- Oyun inerken kullanılan internet kullanımı 0'a düşerse oyunun inmiş olarak kabul ediyor (İlk önce oyunu indirmeye başlatınca bu kod başlatılmalı)
- Sonra da oyun dosya doğrulaması için 1 dk'lık gecikme yapıyor ve sistemi kapatıyor (-s -f -t ile)
( Kapatma için minimum int kullanım değerini ve geciktirme süresi değişiklik gösterebilir kullanıcıya göre )
Basit bir şekilde işlevi bu , 4 kez kullandım hiç sorun yaşamadım, kullanmak isteyen varsa
import os
import time
import psutil
from datetime import datetime
import tkinter as tk
def print_colored_message_in_window(window, message, color, font_size=12):
label = tk.Label(window, text=message, fg=color, font=("Arial", font_size), bg="white", padx=10, pady=5)
label.pack(fill=tk.X, pady=5)
def cancel_shutdown(window):
print("İşlem iptal edildi.")
window.destroy()
def monitor_and_shutdown():
start_time = time.time()
window = tk.Tk()
window.title("Otomatik kapatıcı")
window.geometry("400x400")
window.configure(bg="white")
print_colored_message_in_window(window, "=== Otomatik Kapatma ===", "black", font_size=14)
print_colored_message_in_window(window, "Oyun indirimi tamamlandığında, sistem kapanacak.", "black")
print_colored_message_in_window(window, "Bu pencereyi kapatmayın.", "black")
print_colored_message_in_window(window, "==================", "black")
print_colored_message_in_window(window, "Gece indir, sabah hazır,", "black")
print_colored_message_in_window(window, "Sistem kapanır, senin yerin sabır!", "black")
cancel_button = tk.Button(window, text="İptal", command=lambda: cancel_shutdown(window), font=("Arial", 12), bg="red", fg="white")
cancel_button.pack(side=tk.BOTTOM, pady=10)
window.after(100, window.update)
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
log_file_path = os.path.join(desktop_path, "Otomatik kapatma süresi.txt")
while True:
net_before = psutil.net_io_counters()
time.sleep(1)
net_after = psutil.net_io_counters()
sent = (net_after.bytes_sent - net_before.bytes_sent) / 1024
recv = (net_after.bytes_recv - net_before.bytes_recv) / 1024
if sent == 0 and recv == 0:
print_colored_message_in_window(window, "\nAğ trafiği tamamen durdu. 1 dakika bekleniyor...", "black")
time.sleep(60)
shutdown_time = datetime.now().strftime("%H:%M")
elapsed_time = time.time() - start_time
hours = int(elapsed_time // 3600)
minutes = int((elapsed_time % 3600) // 60)
seconds = int(elapsed_time % 60)
with open(log_file_path, 'a') as log_file:
log_file.write(f"Sistemin kapanma saati : {shutdown_time}\n")
log_file.write(f"Sistemin açık kalma süresi : {hours} saat {minutes} dakika {seconds} saniye\n\n")
print_colored_message_in_window(window, "\nSistem kapanıyor...", "black")
os.system("shutdown /s /f /t 0")
break
window.update()
if __name__ == "__main__":
monitor_and_shutdown()
import time
import psutil
from datetime import datetime
import tkinter as tk
def print_colored_message_in_window(window, message, color, font_size=12):
label = tk.Label(window, text=message, fg=color, font=("Arial", font_size), bg="white", padx=10, pady=5)
label.pack(fill=tk.X, pady=5)
def cancel_shutdown(window):
print("İşlem iptal edildi.")
window.destroy()
def monitor_and_shutdown():
start_time = time.time()
window = tk.Tk()
window.title("Otomatik kapatıcı")
window.geometry("400x400")
window.configure(bg="white")
print_colored_message_in_window(window, "=== Otomatik Kapatma ===", "black", font_size=14)
print_colored_message_in_window(window, "Oyun indirimi tamamlandığında, sistem kapanacak.", "black")
print_colored_message_in_window(window, "Bu pencereyi kapatmayın.", "black")
print_colored_message_in_window(window, "==================", "black")
print_colored_message_in_window(window, "Gece indir, sabah hazır,", "black")
print_colored_message_in_window(window, "Sistem kapanır, senin yerin sabır!", "black")
cancel_button = tk.Button(window, text="İptal", command=lambda: cancel_shutdown(window), font=("Arial", 12), bg="red", fg="white")
cancel_button.pack(side=tk.BOTTOM, pady=10)
window.after(100, window.update)
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
log_file_path = os.path.join(desktop_path, "Otomatik kapatma süresi.txt")
while True:
net_before = psutil.net_io_counters()
time.sleep(1)
net_after = psutil.net_io_counters()
sent = (net_after.bytes_sent - net_before.bytes_sent) / 1024
recv = (net_after.bytes_recv - net_before.bytes_recv) / 1024
if sent == 0 and recv == 0:
print_colored_message_in_window(window, "\nAğ trafiği tamamen durdu. 1 dakika bekleniyor...", "black")
time.sleep(60)
shutdown_time = datetime.now().strftime("%H:%M")
elapsed_time = time.time() - start_time
hours = int(elapsed_time // 3600)
minutes = int((elapsed_time % 3600) // 60)
seconds = int(elapsed_time % 60)
with open(log_file_path, 'a') as log_file:
log_file.write(f"Sistemin kapanma saati : {shutdown_time}\n")
log_file.write(f"Sistemin açık kalma süresi : {hours} saat {minutes} dakika {seconds} saniye\n\n")
print_colored_message_in_window(window, "\nSistem kapanıyor...", "black")
os.system("shutdown /s /f /t 0")
break
window.update()
if __name__ == "__main__":
monitor_and_shutdown()