1. 程式人生 > >模擬瀏覽器發送請求報文

模擬瀏覽器發送請求報文

編碼 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

  

模擬瀏覽器發送請求報文