
PyMemoryEditor v2.1.0
実行中の任意のプロセスのメモリを、わずか数行のPythonコードで検査・変更・検索できる、純粋なPythonライブラリです :snake:。
PyMemoryEditor
ctypes 上に構築された純Pythonライブラリで、数行のPythonコードで実行中のあらゆるプロセスのメモリを検査・改変・検索できます。Windows、Linux、macOSで動作するCheat Engineワークフローを実現します。
あらゆるプロセスのメモリを読み取り、書き込み、スキャン — Pythonから直接。
1つの統一API。3つのOS。Cコンパイラ不要。ネイティブビルドステップ不要。
🪟 Windows · 🐧 Linux · 🍎 macOS — 32ビット/64ビット対応。
実行中のゲームの値を改変する · 稼働中プログラムの状態を検査する · RAMから直接データを採取する。
インストール
pip install PyMemoryEditor
同梱のGUIアプリ(Cheat Engine風スキャナ)もインストールするには、app エクストラを使用します:
pip install "PyMemoryEditor[app]"
pymemoryeditor
大規模なプロセスでスキャンを高速化したい場合は、speed エクストラを追加してください。NumPyが導入され、数値スキャンの比較ループが自動的にベクトル化されます。選択的スキャンで約10〜30倍高速になります:
pip install "PyMemoryEditor[speed]"
📖 完全なガイドは Read the Docs をご覧ください。
動作例
from PyMemoryEditor import OpenProcess
with OpenProcess(name="game.exe") as process:
# Scan the whole process for every address holding the value 100.
for address in process.search_by_value(int, value=100):
print(f"Found at 0x{address:X}")
# Read the current value, then write a new one back.
current = process.read_int(address)
process.write_int(address, current + 500)
これだけです — 3行で別のプロセスを読み取り、書き込み、スキャンできます。すべてのプラットフォームで同じように動作します。
含まれるもの
🐍 Pythonライブラリ
別プロセスのメモリへの完全な制御 — 数行のPythonで:
- ✅ 読み書き 値(
int、float、bool、str、bytes) - 🔍 値スキャン 8つの比較モード対応
- 🎯 パターンスキャン(IDAスタイルのAOB&正規表現)
- 🔗 ポインタチェーン + ライブな
RemotePointerハンドル - 🧭 ポインタスキャン — ASLRを生き残る静的ポインタを検出
- 🗺️ メモリマップ、モジュール、スレッド
- 🧱 リモートメモリの割り当てと解放(Windows / macOS)
🖥️ 同梱GUIアプリ
ライブラリの全機能をコード不要で利用可能:
- ⚡ ゼロセットアップ — プロセスにアタッチして数秒でスキャン開始
- 🧲 絞り込みワークフロー — ファーストスキャン → ネクストスキャンをライブな視覚フィードバック付きで実行
- 📋 チートテーブル — 値をその場でフリーズ/書き込み、JSONインポート/エクスポート対応
- 🔬 ヘックスビューア — 生のメモリを閲覧し、インラインで書き戻し
- 🧩 ポインタスキャンUI — 数クリックでスキャン、エクスポート、セッションをまたいだ再スキャン
- 🎨 ワンクリックアクセス — すべての機能をコード不要で利用可能
📖 ドキュメント
完全なドキュメントは pymemoryeditor.readthedocs.io にあります — インストール、Cheat Engineワークフロー、すべてのメソッドとパラメータ、GUIアプリガイド、プラットフォーム別の注意点、トラブルシューティング。
どこを見ればよいかの早見表:
| クイックスタート | プロセスを開き、読み取り、書き込み、最初のスキャンを実行します。 |
| メモリの検索 | 値スキャン、範囲指定、結果の絞り込み、Cheat Engineループ。 |
| パターンスキャン | バイト署名(AOB)と正規表現でコード/データを検索します。 |
| ポインタ | マルチレベルポインタチェーンとライブな RemotePointer。 |
| ポインタスキャン | ASLRを生き残る静的ポインタを見つけます。 |
| GUIアプリ | 同梱のCheat Engine風スキャナ。 |
| APIリファレンス | すべての公開クラス、メソッド、パラメータ。 |
| プラットフォーム別の注意点 | Windows、Linux、macOSでの権限と癖。 |
| トラブルシューティング | よくあるエラーとその修正方法。 |
これで何が作れるのか?
- 🎮 ゲーム改造&スピードラン用ツール — 古典的なCheat Engineのユースケース。
- 🔬 デバッグ&イントロスペクション — デバッガをアタッチせずにライブ状態を検査。
- 📊 可観測性ツール — 実行中プロセスの変数をサンプリングしてテレメトリを取得。
- 🔐 セキュリティ&リバースエンジニアリング研究 — 自分が所有する、またはテストを許可されたシステム上で。
- 🎓 学習 — 同梱アプリはメモリスキャンの仕組みを教えるのに最適な教材です。
[!NOTE] 責任ある使用について。 PyMemoryEditor はOSレベルのAPIを通じて他のプロセスと通信します。 自分が所有するプロセス、または明示的な許可を得たプロセスのみを対象にしてください。
🤝 コントリビューション
プルリクエスト、バグ報告、機能アイデアを歓迎します。開発環境のセットアップ、テスト構成、把握しておくべき少数のプラットフォーム固有の癖については、CONTRIBUTING.md をお読みください。
PyMemoryEditorがあなたのプロジェクトに役立ったなら、ぜひリポジトリに ⭐ をお願いします。開発を支援し、他の人にこのライブラリを知ってもらう最も簡単な方法です。
ライセンス
MIT License の下で公開されています — 個人・商用利用は自由です。