I've done both: On my Ford Aspire, it would start doing that and I found that lubing the cable with dry graphite lube would quiet things down for a year or so. I would re-lube it when it got noisy again.
On my Escort, that didn't work, but luckily Escort speedos are plentiful in salvage yards. I got one for a nominal price (maybe $10?) and put it in and it's been fine ever since. The odometer came with the unit, but the one I got was very close in mileage to the one I replaced, so I just moved the numbers on the replacement one until they were the same.
Here is something I posted about my Escort speedo on another forum:
I made a little diagram to show how I think the mechanical speedo works. Pay attention to the note in the lower right hand corner; that's what the problem is when it makes that rubbing noise:
On my junk speedo, you can see the same pieces when you look at the back side:
From the front, there are calibration marks, and a pin at zero. I'm pretty sure that for the Escort speedo, if you remove the needle, it should be aligned with the calibration mark just below zero when it's put back on (you have to remove the pin at zero to do this; then after the needle installed, move it above zero and push the pin back in.)
You can see a white spot in the speedo face where the zero pin goes.