Automated spam can be a big problem for sites that do not know to handle it very well – i have found that by far the best way to stop most automated spam, is to implement pattern matching checks for submitted content. It does not need to be very advanced to be effective at blocking spam – you do not need a dynamic pattern matching system to prevent spam.
All you really need, is a table of unique patterns used by automated spammers in their comments, including words and phrases that would be irrelevant to your site – people have no reason to talk about car assurance, on a site about web-development.
Often spammers will also post multiple links in the same comments, so you could also implement a link counter as part of your pattern matching – to check the number of links in a comment, and how the links are positioned. Often they are just separated by a single word, number, or a few symbols. Most such spam comments are easily detected.
Do not use captchas
I do not like being forced to "digitise books" just because someone had the idea that captchas could be used for that. Captchas are also annoying to users for other obvious reason, especially the newer ones, as they can be very difficult to read.
You can however create your own Captchas, but they should only be used if a given user has been tagged as a bot, I.e. Posting to fast, posting to many links, etc.