python 模拟浏览器请求
浏览器请求头
请求模拟
import socket
#创建TCP链接
tcp_socet=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#DNS解析和链接HTTP服务器
tcp_socet.connect(("www.baidu.com",80))
#请求头
request_line="GET / HTTP/1.1\r\n"
request_header="Host:www.baidu.com\r\n"
request_data=request_line+request_header+"\r\n"
#发送请求
tcp_socet.send(request_data.encode())
#接收响应报文
response_data=tcp_socet.recv(4096)
#对响应报文进行解析
response_str_data=response_data.decode()
print(response_str_data)
index= response_str_data.find("\r\n\r\n")
html_data=response_str_data[index+4:]
data_file=open('index.html','wb')
data_file.write(html_data.encode())
data_file.close()