模擬瀏覽器發送請求報文
阿新 • • 發佈:2018-05-12
編碼 TP class 瀏覽器 conn connect www print esp
import socket # 建立socket對象 socket_con = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 連接指定服務器地址 socket_con.connect((‘www.baidu.com‘, 80)) # 拼接請求報文 # 請求行 request_line = ‘GET / HTTP/1.1\r\n‘ # 請求頭,必須要寫明Host,原因是因為,之前連接就相當於找到了教室 # 這裏的Host則相當於在教室裏找座位,這樣才能確定正確的位置 request_head = ‘Host:www.baidu.com\r\n‘ # 必須加空行 request = request_line + request_head + ‘\r\n‘ # 發送給服務器,默認編碼utf-8 socket_con.send(request.encode()) # 接收服務器返回的響應報文,並解碼 response = socket_con.recv(4096).decode() # 打印響應報文 print(response) # 關閉socket
模擬瀏覽器發送請求報文