I'm going to assume that you have a new battery now.

Pull that starter and have it bench tested at an AutoZone or Advance Auto for free. If they don't find a problem (watch them closely, or they WILL find a problem), re-install the starter. A lot of times it's just a matter of a loose wire (hot or ground). Removing and re-installing the starter (properly cleaning contacts for the wiring while you're at it) will cure your troubles.

...or you could just whack it with a hammer.