This Crawler uses socket to simulate http request The program itself is very simple, the key point is that it built the http request from bottom.