本篇文章主要介绍了"python爬虫 Python开发:Socket",主要涉及到python爬虫方面的内容,对于Pythonjrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播感兴趣的同学可以参考一下:
一、Socketsocket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。sock...
一、Socket
socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。
socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)
socket和file的区别:
- file模块是针对某个指定文件进行【打开】【读写】【关闭】
- socket模块是针对 服务器端 和 客户端Socket 进行【打开】【读写】【关闭】

1、信息交互的程序
服务端:
#server端
import socket
ip_port = ("127.0.0.1",9999) #服务器端ip和服务端口
server = socket.socket() #创建server
#server =
server.bind(ip_port) #绑定地址ip
#server =
server.listen(5) #开始监听,允许5个客户端排队
conn,addr = server.accept() #等待连接
#conn =
#addr = ('127.0.0.1', 60086)
client_data = conn.recv(1024) #收取信息,1024字节
#client_data = b'hello'
conn.sendall(client_data.upper()) #发送数据
conn.close() #关闭程序
客户端:
#client端
import socket
ip_port = ("127.0.0.1",9999) #要连接的服务器IP和端口
client = socket.socket() #创建client
client.connect(ip_port) #连接服务器端
info = "hello"
client.sendall(info.encode("utf-8")) #发送数据包,把str转换为bytes类型
server_data = client.recv(1024) #收取数据包
print(server_data.decode("utf-8"))
注:如果客户端发送空字符给服务端,客户端发送没有问题,但是服务器是不会接受空字符的,服务器依然会停留在接受状态,程序会一直卡着