sync and async web crawler