更新一波学的socket编程,socket还是比较重要的,探测端口,连接服务底层都是socket编程。tcp有server 和 client。client和udp发送差不多。
server端是建立了两个连接,一个是listen监听连接,如果有人连接到了这个端口,那么新创建一个连接,新创建的连接和这个人保持通信。旧的连接可以一直监听。
简单点总结就是Listen-->accept-->recv(1024)-->新连接close()-->旧连接close()
#!/usr/bin/env python
#-*- coding:utf-8 -*-
# @Author : "你们的饭不好吃"
import socket
tcp_server = socket.socket(socket.AF_INET , socket.SOCK_STREAM)
# 绑定端口
tcp_server.bind(("",8888))
# 服务器是8888端口
# 监听端口
tcp_server.listen(127)
print("----------------------1---------------------")
# 接受到电话
new_client,client_addr = tcp_server.accept()
print("-----------------------2-------------------")
print(client_addr)
recv_data = new_client.recv(1024)
print(recv_data)
new_client.send('hhhh' .encode('utf-8'))
new_client.close()
tcp_server.close()
# 这个视频没有讲详细,但是这个可以告诉给我,tcp是建立两个连接的,一个是先连接到然后等到监听,另一个是开始连接。所以断开的时候,就需要两个都断开了
# tcp_server做为服务端的,是需要先listen,然后accept,最后有一个收的过程recv就更好了。如果只有收没有发,似乎也不太好,所以可以是发送