Pd-Analyzer is a command-line utility that reads one or more Pure Data files and produces 2 output files in CSV format. The first file, "messages.csv", lists the messages sent and received by the PD files and the objects which send or receive them. The second file, "hierarchy.csv", lists the objects (excluding vanilla built-in objects) which are used by the PD files.
Although the internal details of the Pure Data file format are not officially documented and may change in future releases, I based it on some documentation (which seems to be a little out-of-date) available on the Pure Data web site:
https://puredata.info/docs/developer/PdFileFormat
It has been tested under Python v3.13; it may run under earlier versions, but there is no guarantee. It uses only standard libraries; no external libraries need to be installed.
Typical usage:
python Pd-Analyzer.py -f *.pd
David Kettle
Feel free to suggest features or report bugs by opening an issue. If you'd like to make modifications to the code yourself, you can download or clone the code, but please understand that if you modify the code, I'm unable to provide support for your modified version. I'm the sole developer and only have time to support my own releases.