We want to  parse our huge C++ source tree to gain enough info to feed to another tool to make diagrams of class and object relations, discern the overall organization of things etc.  
My best try so far is a Python script that scans all .cpp and .h files, runs regex searches to try to detect class declarations, methods, etc.   We don't need a full-blown analyzer to capture every detail, or some heavy UML diagram generator - there's a lot of detail we'd like to ignore and we're inventing new types of diagrams.  The script sorta works, but by gosh it's true: C++ is hard to parse!   
So I wonder what tools exist for extracting the info we want from our sources?   I'm not a language expert, and don't want something with a steep learning curve.  Something we low-brow blue-collar programmer grunts can use :P
Python is preferred as one of the standard languages here, but it's not essential.
Can you run a preprocessing step?  Doxygen parses most C++ syntax and creates xml with all the relationships.  Compilers also create debug databases (typically dwarf format from gcc and codeview format from MSC).
How to parse C++ source in Python?