There is no way that I know of. \section & company are nothing special for the TeX engine; they're just macros that the engine expands as any other. There are some parsers out there, but they seem somewhat fragile, due to the complexity of TeX.
>From the Lua side it is possible to access the nodes of the document, but I don't know if that would serve your purpose. If all you need is document parts (sections, paragraphs,...), references and some text features (bold, italics,...), you could perhaps write your documents in another language that you could (more easily) parse from your Python script (e.g. Markdown). Then, to typeset them, you could either translate them to TeX before running the engine (possibly sharing the parsing logic with your Python script) or read them at document generation time with Lua.
