参考原文
我们知道每一条TCP的连接有2个端点,这两个端点叫做套接字socket。如果我们要进行基于TCP的通信必须先创建套接字。在Python中可以这样创建套接字socket,并向服务端发送请求:
#导入socket库 import socket import io #创建一个socket: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #建立链接 s.connect(('www.sina.com.cn', 80)) #客户端发送请求: s.send(b'GET / HTTP/1.1\r\nHost: www.sina.com.cn\r\nConnection: close\r\n\r\n') #注意空格,回车换行 #接收从服务器返回的数据: buffer = [] while True: d = s.recv(1024) #每次最多接收1K字节 if d: buffer.append(d) else: break data = b''.join(buffer) #连接字符串 #关闭链接 s.close() #将HTTP报文头和正文分离: header, html = data.split(b'\r\n\r\n',1) #后面的参数是分割次数 #看下响应报文头: print(header.decode('utf-8')) #把接收到的正文写入文件: with open('sina.html','wb') as f : f.write(html)