I know I can get a lot of data from free sites (Yahoo/Google/etc), but are they going to mind if I download data from their sites every day for every stock? In other words, what's the best way to get data if I wanted to build my own screener or database? I am not opposed to paying for good data if that's the best way, but would be interested in recommendations.