I've rebuilt many small engine starters. There's not much too them. and 90% of the 100's I've rebuilt didn't need new parts. All they needed was a good cleaning, greasing and then lasted for years of service.
So here is a simple cheap way to try to fix it.
First, try to turn the engine by hand, it should be hard to turn then jump forward, if it is impossible to turn it's not the starter.
Eliminate it being the battery, use 2 awg or larger (o awg) jumper cables off of your car battery, see if turns, if it does, it's the battery, the solenoid, or bad connection at the cables. most of the time bad connection, wire brush the battery terminals, the cable ends, the starter positive lead, unscrew a starter bolt from the engine, wire bursh it, put it back in (sometime corrosion gets in there).
if you do all that and still not turning, pull the starter.. try to turn the shaft by hand. most likely it will be very hard to turn. if it is:
loosen the two screws that run the length of the starter, but hold the sections together, getting those electrodes back into place is a bugger so don't ket it come apart too far. pull the bottom section about a 1/4 inch from the mid section, soak it with penetrating oil. try to turn the shaft, repeat until the shaft frees up. then turn it some more til it moves freely, then soak the hell out of it and watch all the debri run out. then tighten the two screws back up remount, hook up and bam your starter will work for a while longer. It could last for years, it could last for a week, no way to tell.. in the mentime figure on replacing the starter asap..
Thats a quick cheap fix that works more times then not for older starters tht have been sitting around.. I just did one yesterday on a 1972 kohler opposed twin, that I had doe the samething to 5 years ago.. It's still the original starter..