Get a 2nd hand carpet shampooer off ebay. I normally use upholstery cleaner spray, give it a good scrubbing in, then a vax machine just with water in to pull all the dirt out. You'd be amazed at the colour of the water in the dirty tank after!
http://www.ebay.co.uk/itm/Wet-Dry-Ca...item3cc47ceb00
This is the one i've got.