A couple months ago the spammers got my email address, for years before that I never had a problem.
I use iCloud rules to filter out 90% of the spam.
One important thing to do when using iCloud rules:
It starts filtering at the top of the list and stops filtering that email when it matches a rule. So I put important email addresses at the top and move them to a folder first. That way if an important email happens to contain one of the spam keywords it will not be moved to the trash.