How to save each individual "object" in an obj file as separate obj files? I've been importing some somewhat complicated obj files for a project. I noticed that these models had different segments that would end with a line starting with 'o' followed by some name for that segment (I'm assuming 'o' stands for 'object'). The format I'm converting these obj models to is incredibly niche. It's a custom model format and afaik only one obj converter exists. All it can do is take the entire obj file as a single model with a single universal texture and convert it to other format which quite literally only contains a list of triangles as raw data.

This has produced an unusual issue for me. I have been forced (by my own insistence to not waste more time coding my own converter) multiple times now to hand-edit these obj models as a result of the model format. I'd have to copy the obj files X times according to however many internal objects there are and then hand delete the face elements corresponding to that object via a text editor.

Preferably it would be nice to just open a model and then click "save as individual pieces" or click save on each object if there is some spot in the editor that they are listed. Does Blender have such a feature? I've only ever used it to convert a few models to the obj format as the other converter didn't support those formats.
I created a quick scene with a few basic Meshes Joined together to form a single Mesh



In Edit mode I selected everything and pressed P to bring up the Separation menu and selected "By loose parts"



Now in Object mode you can see even the over lapping components are separate Meshes.



From the File->Export menu select Wavefront (.obj)


And check "Selection Only"



I did not look into it, but you may be able to use Python to select each Mesh in turn and call the Export module in a loop.