
PyMemoryEditor v2.2.0
Una libreria pura Python che ti permette di ispezionare, modificare e cercare nella memoria di qualsiasi processo in esecuzione in poche righe di Python :snake: .
PyMemoryEditor
Una libreria Python pura (basata su ctypes) che ti permette di ispezionare, modificare e cercare nella memoria di qualsiasi processo in esecuzione con poche righe di Python — flussi di lavoro stile Cheat Engine su Windows, Linux e macOS!
Leggi, scrivi e scansiona la memoria di qualsiasi processo — direttamente da Python.
Un'API unificata. Tre sistemi operativi. Nessun compilatore C. Nessun passaggio di build nativa.
Funziona su 🪟 Windows · 🐧 Linux · 🍎 macOS — a 32 e 64 bit.
Modifica un valore in un gioco in esecuzione · ispeziona lo stato di un programma live · estrai dati direttamente dalla RAM.
Installazione
pip install PyMemoryEditor
Per installare anche l'app GUI inclusa (uno scanner stile Cheat Engine), usa l'extra app:
pip install "PyMemoryEditor[app]"
pymemoryeditor
Per scansioni più veloci su processi di grandi dimensioni, aggiungi l'extra speed. Include NumPy
e vettorizza automaticamente il ciclo di confronto delle scansioni numeriche — ~10–30× più veloce nelle
scansioni selettive:
pip install "PyMemoryEditor[speed]"
📖 Guida completa su Read the Docs.
Vediamolo in azione
from PyMemoryEditor import OpenProcess
with OpenProcess(name="game.exe") as process:
# Scansiona l'intero processo per ogni indirizzo che contiene il valore 100.
for address in process.search_by_value(int, value=100):
print(f"Trovato a 0x{address:X}")
# Leggi il valore corrente, poi scrivi un nuovo valore.
current = process.read_int(address)
process.write_int(address, current + 500)
Tutto qui — leggi, scrivi o scansiona un altro processo in tre righe, allo stesso modo su ogni piattaforma.
📖 Documentazione
La documentazione completa è disponibile su pymemoryeditor.readthedocs.io — installazione, flusso di lavoro Cheat Engine, ogni metodo e parametro, guida all'app GUI, note sulle piattaforme e risoluzione dei problemi.
Una mappa rapida di dove andare:
| Avvio rapido | Apri un processo, leggi, scrivi ed esegui la tua prima scansione. |
| Ricerca nella memoria | Scansioni per valore, intervalli, raffinamento dei risultati, il ciclo Cheat Engine. |
| Scansione pattern | Trova codice/dati con firme di byte (AOB) e regex. |
| Puntatori | Catene di puntatori multilivello e il RemotePointer live. |
| Scansione puntatori | Trova puntatori statici che sopravvivono ad ASLR. |
| L'app GUI | Lo scanner stile Cheat Engine incluso. |
| Riferimento API | Ogni classe, metodo e parametro pubblico. |
| Note sulle piattaforme | Permessi e peculiarità su Windows, Linux e macOS. |
| Risoluzione dei problemi | Errori comuni e come risolverli. |
Cosa posso costruire con questo?
- 🎮 Strumenti di modding di giochi e speedrunning — il classico caso d'uso di Cheat Engine.
- 🔬 Debugging e introspezione — ispeziona lo stato live senza collegare un debugger.
- 📊 Strumenti di osservabilità — campiona variabili in un processo in esecuzione per la telemetria.
- 🔐 Ricerca sulla sicurezza e reverse engineering — su sistemi di tua proprietà o per cui sei autorizzato a testare.
- 🎓 Apprendimento — l'app inclusa è un ottimo strumento didattico per capire come funziona la scansione della memoria.
[!NOTE] Uso responsabile. PyMemoryEditor comunica con altri processi tramite API a livello di sistema operativo. Puntalo solo verso processi di tua proprietà o per cui hai esplicita autorizzazione a ispezionare.
🤝 Contributi
Pull request, segnalazioni di bug e idee per nuove funzionalità sono molto gradite. Leggi
CONTRIBUTING.md per la configurazione di sviluppo, la struttura dei test e
il piccolo insieme di peculiarità specifiche della piattaforma da tenere a mente.
Se PyMemoryEditor ha aiutato il tuo progetto, per favore metti ⭐ al repository — è il modo più semplice per supportare il lavoro e aiutare altri a scoprire la libreria.
Licenza
Rilasciata sotto Licenza MIT — libera per uso personale e commerciale.