Is this the best, most effective approach?
No. You'll get significantly lower response rates with this method. That said, it is doable. If that's the only data you have, try it first before making assumptions. The good news is that data is cheap and easy to obtain. You can simply enter a search term into Google SERP, get hundreds of results, page through them, extract all the websites, make an HTTP request to each site, and scrape any email addresses you find. This gives you thousands, even tens of thousands of emails for just a few cents. It's totally doable, though the low barrier means many others are doing it, increasing competition.