Instead of relying on cleaners which never fully remove the stain an extractor is what you want. The Bissell Little Green is probably the best for the non-professional.
A wet dry vac with a narrow nozzle also works well. Then any off the shelf upholstery, carpet cleaner, or APC works better than speacialty products.
My best results always were with liquid Tide, a good rinse and extract cycle and then spraying down with diluted fabric softener and extracting that mixture. That always got everything out, including the stuff that got sopped up in the foam.