distutils.dir_util.copy_tree(src, dst[, preserve_mode=1, preserve_times=1, preserve_symlinks=0, update=0, verbose=0, dry_run=0])
update と verbose は copy_file() のものと同じです。
distutils.file_util.copy_file(src, dst[, preserve_mode=1, preserve_times=1, update=0, link=None, verbose=0, dry_run=0])
update が真の場合、 src は dst が存在しない場合か、dst が存在して src より古い場合にだけコピーします。
フォルダのコピーですでに取得済みのコピーをスキップするには update を1にすればよさそうだ。