Neler Yeni

Yüksek boyutlu oyunu gece indirmeye bırakıp sabaha iner diyenler bakabilir

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


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

FurkanIIy

80+ Bronze
Katılım
22 Ekim 2020
Mesajlar
1,529
Teşekkür ederim hocam. Şu tarz konulara hasret kaldık, eline sağlık. Normalde CMD'ye shutdown -s -f -t komutunu girerek zamanlayıcı ayarlıyordum, artık bunu kullanacağım.
 
Yeni mesajlar Yeni Konu Aç      

SON KONULAR

Çevrim içi yöneticiler

  • B1L0
    Hayırlı forumlar

Forum istatistikleri

Konular
1,033,637
Mesajlar
9,315,259
Üyeler
163,859
Son üye
bunstep
Top Bottom