Luckily there is a very good and effective solution. reCAPTCHA Mailhide is provided free of charge by the same team who provide the hundreds of millions of reCAPTCHAs served each day. Most of us have seen and used reCAPTCHA when filling in online forms or subscribing to content. reCAPTCHA helps to distinguish between humans and robots as the text provided in the CAPTCHA is unreadable by robots (actually Optical Character Recognition / OCR software).
reCAPTCHA Mailhide is effective in that your email address is masked (hidden) and only shown when the CAPTCHA is entered correctly i.e. robots are unlikely to be able to read the two words provided in the CAPTCHA. All you need to do is go to the reCAPTCHA Mailhide website and enter your email address. You’ll then be given some HTML to place on your website which will mask your email address until the CAPTCHA is correctly entered.
Below is my email address as displayed using the code provided by reCAPTCHA. Click on the address to reveal the CAPTCHA which must be correctly entered before my email address is shown: