When you get off the ship, there will be a LOT of vendors on the pier offering the same excursions. I would go to the website for the port you will be in and see what companies they support at their website.
Norwegian Sea, Roatan/Belize, Apr 2004
RCCL Splendour of the Seas, Western Caribbean (Cozumel/Costa Maya), May 2007
Princess Diamond, Mexican Riviera (Puerto Vallarta/Mazatlan/Cabo San Lucas), Sep 2006
Carnival Paradise, Catalina Island/Ensenada BC, Jun 2011