On my sites, reviews are hidden by default until I approve them. Comments require a login and abusers are banned.
Contact forms require an email address and submissions can be denied for various reasons (email domain, keywords, country, IP address etc).
Most of these require some sort of (non-captcha) human check as well.
On my adult site, anyone with an IP in a banned state gets forwarded to an alternative site. I use the same list as pornhub for this.