When we moved into the house, we did so knowing that the previous owners had pets (4 cats + a dog at some point + rabbits), and that the carpet was vintage 1995 - and white! We replaced the carpet in the Master & hallway out of necessity, but debated on what to do with the rest of the house. I chose to DIY with a Bissell take home steam cleaner rented from Lowe's.
I had never used one of these, but once I manhandled it out of my car's cargo area, I found it straightforward: clean water + detergent in the bottom, make 3 passes for each area of the carpet, then repeat, repeat, repeat, and dirty water fills the top.. A numbingly boring, noisy process, but much helped with a set of giant headphones & an iPod set on shuffle.
Yes, this is the "dirty water" tank after about 20 minutes of cleaning. I found the machine to be quite efficient - the carpet dried within a few hours of being cleaned.
I used this in 4 rooms, and was mostly impressed with the results. I noticed the biggest difference in the 2 rooms of white carpet. They are not pristine, but in many places I noticed an immediate change in color. Because of the lingering pet odor (and to be clear, the house doesn't reek of pet, but there was a noticeable smell wafting from the front room in particular), I was really hoping that there would be a huge change in the overall smell, and while there was improvement, I'd say that the follow-up dousing of Febreeze Carpet made more of a difference in the smell.
Bottom line: For the money savings, I would do this again. It cost about $50 for a 24-hour rental of the machine and 2 bottles of the cleaning solution. I still have 3/4 of a bottle left, and for $23 to rent the machine, I will probably do this again in our large family room. Compared to about $250+ for professional cleaning of the 4 rooms I DIY'd, this was a great savings. I admit, it was made much easier by the fact that I did this before our furniture was moved in. And I still spent about 8 hours total with all the cleaning - so it wasn't really "cheap" in the sense of time spent. Because of the difference in smell, and the overall feeling the carpet was so much cleaner, I think this was a successful DIY.