• Bagikan post ini ke Sosial Media!
    • Shorcut Sosial Media
    • Copy Paste Link berikut
    • Links
    • BBCode
    • HTML
#1
Code:
import pylast
import time
import os
import threading
import keyboard
import win32gui
import win32process
import psutil

# -------------------------------------------------------------
# KONFIGURASI Last.fm
# -------------------------------------------------------------
API_KEY = '**************************'
API_SECRET = '**************************'
username = '**************************'
output_file = 'D:\\Music Harddisk\\NowPlaying\\nowplaying.txt'

# -------------------------------------------------------------
# FUNGSI Last.fm
# -------------------------------------------------------------
network = pylast.LastFMNetwork(api_key=API_KEY, api_secret=API_SECRET, username=username)
stop_event = threading.Event()

def get_ytm_nowplaying():
    """Mendapatkan lagu yang sedang diputar dari Last.fm."""
    try:
        user = network.get_user(username)
        track = user.get_now_playing()
        if track:
            return f"{track.get_artist().get_name()} - {track.get_title()}"
    except Exception:
        pass
    return None

# -------------------------------------------------------------
# LOGIKA UTAMA
# -------------------------------------------------------------
def monitor_music():
    """Logika utama untuk mendeteksi dan menulis lagu."""
    last_status = None # Variabel untuk menyimpan status sebelumnya

    while not stop_event.is_set():
        now_playing = get_ytm_nowplaying()
        
        # Cek apakah status sekarang berbeda dengan status sebelumnya
        if now_playing != last_status:
            # Jika berbeda, perbarui file dan cetak ke konsol
            with open(output_file, 'w', encoding='utf-8') as f:
                f.write(now_playing if now_playing else "No audio playing")
            
            print(f"Updated: {now_playing if now_playing else 'No audio playing'}")
            
            # Perbarui last_status dengan status yang baru
            last_status = now_playing
        
        time.sleep(5)

def main():
    """Fungsi utama."""
    print("Monitoring music... Press 'C' to stop.")
    monitor_thread = threading.Thread(target=monitor_music)
    monitor_thread.start()
    try:
        keyboard.wait('c')
    except keyboard.KeyboardError:
        pass
    finally:
        stop_event.set()
        monitor_thread.join()
    print("Stopped.")

if __name__ == "__main__":
    main()
Tuhan Yesus itu baikΒ  Angel