I have found steam cleaning to be a waste of time in such circumstances. I think steam cleaning basically sanitises it, but does not clean it.
I'd be looking at a carpet shampoo-er if I were you. We have one primarily to clean up pooch messes, but it's also been used at a student apartment...