There are various things you can put on visors but none protect them from getting scratched. The secret is how you look after them. The first thing is when it rains, don't wipe the visor with your glove or anything else – don't touch visor at all.
The spray thrown up on the road will be part rain water, part road grit and much – wiping your glove across will quickly scratch your visor. The best thing is to wash if off with clean tap water and then use a soft dry cloth to wipe the visor clean. The other key thing is cleaning your visor. We've found the best products are dedicated visor cleaners that are a spray foam. The foam lifts dirt away from the visor so when you wipe it off with an old cotton tee-shirt it sort of floats off the visor rather than scratching it. A good sponge and cleaning kits are very good too.
Don't try to remove old dirt/flies by brushing it off with your glove. Simply moisten a kitchen towel, spread it on your visor and leave for ten minutes. Soft dirt is easier to clean off and less likely to scratch.