One quick win that might catch most of the bots is using CSS to hide an dummy form input.
No human will see it if their browser properly renders, but bots using CSS selectors might fill it in. If you see that field is filled in then you have a high probability of it being a bot and can drop it.