由于套接字没有连接并且(当使用一个 sendto 调用发送数据报套接字时)没有提供地址,发送或接收数据的请求没有被接受
来源:1-1 从零开始 系统入门python爬虫工程师-课程导学

慕无忌8377331
2024-06-09
#socket服务端
import socket
#创建套接字
server = socket.socket()
绑定IP与端口
server.bind((‘0.0.0.0’, 800))
监听端口
server.listen()
返回一个套接字对象 和地址信息
sock, addr = server.accept()
data = ‘‘
while True:
server.send(‘huanying’.encode(‘utf8’))
# 可以一次行接受多大文件 tmp_data = 接收到的数据
tmp_data = sock.recv(1024)
print(tmp_data.decode(‘utf8’))
input_data = input(’’)
sock.send(input_data.encode(‘utf8’))
# 如果tmp_data有数据为True 没有为Flase
# if tmp_data:
# # data = data + tmp_data
# # 把tmp_data.decode解码为utf8
# data += tmp_data.decode(‘utf8’)
# if tmp_data.decode(‘utf8’).startswith(’#’):
# break
# # 如果tmp_data没有数据
# else:
# # 打破跳出循环
# break
输出data
print(data)
关掉sock
#sock.close()
#socket客户端
import socket
创建套接字
client = socket.socket()
连接ip与端口
client.connect((‘192.168.2.4’, 800))
server_data = client.recv(1024)
server_data1 = server_data.decode(‘utf8’)
print(‘server response:’ + server_data1)
while True:
input_data = input(‘请输入:’)
# send方法传递的数据类型是字节串bytes类型,用encode变为(’utf8‘)
client.send(input_data.encode(‘utf8’))
server_data = client.recv(1024)
print(‘server response:’ + server_data1)
# print(‘server response:{}’.format(server_data.decode(‘utf8’)))
client.close()
1回答
-
bobby
2024-06-15
client端连接到服务端肯定是要设置服务端的ip的
00
相似问题