SPAM callers , other than legitimate businesses, rarely use "real", working numbers (at least, not their own), and will change them often, so they are very difficult to block, by using the caller ID.
If SPAM callers have become a problem, speak to your provider, to see if they can help at all. If you don't ask, the answer is automatically , NO.
The other thing you can do, is to make callers "jump through a hoop" by requiring a DTMF input, in an IVR before the call will proceed, to a person. Of course, every situation is different and this is not going to work for everyone.