I bought a Rug Doctor Mighty Pro X3
(I got mine from Costco, but you can get them from Amazon too).
It worked pretty well. No setup to speak of, just get it out of the box, put mix up some hot water and their OxySteam cleaner in a bucket and get working. I did not use their directions to do a single pass. Instead I did one pass with detergent/water, one pass with water to rinse, and then one pass dry to suck up the excess water. It paid for itself in one use. I ran the ceiling fans and the heat/ac (alternating) to help speed up the drying.
Here is some dirty water after a few passes (gross - all that dirt in the carpet!)
Here is a sorbet stain (raspberry) on the carpet:
The Rug Doctor got it all: