Python bindings for procmaps.rs.
procmaps.py is available for Python 3.7+ via pip:
$ pip install procmaps
import procmaps
# also: from_path, from_str
maps = procmaps.from_pid(9001)
for map_ in maps:
# `in` can be used to check address inclusion
if 0xfeedface in map_:
print("this map contains some address!")
# see dict(map_) for all attributes
print(f"{map_.begin_address}: {map_.pathname}")
procmaps.py uses PyO3 for binding Rust
to Python. It uses Maturin to coerce the
Rust build into a pip
and PyPI-compatible wheel.
Assuming that you have Rust and a relatively recent Python 3 installed, the following should just work:
$ make develop
$ source env/bin/activate
A local build of procmaps.py will be created and installed in your virtual environment.