So, the EnhancedHTML module lets you do that. The demo script is what uses the module to produce one page per computer.
All you have to do is create a fragment per computer, and then bundle those together into a completed page. So instead of a section for disk, a section for processes, etc., you do a “section” per computer. Same basic pattern as the demo script.
What you’re wanting is really simpler. You just need to produce a function that outputs one object per disk per computer. So, feed the function a bunch of computer names, and it queries them. For each disk,it outputs an object with Computername, Disk, Freespace, etc. Those objects get piped to make a single, one-section HTML report, since all you’re after is a single table. You only need to do multiple fragments if you want multiple tables in the report, like the demo does.