Python套接字编程recv

问题描述 投票:1回答:1

我今天开始使用python,我正在研究socket编程。我已经连接到带有套接字实例的ip和端口,我试图用recv方法读取套接字上的下一个1024字节。当我试图将它存储在变量中时,我收到一个错误,告诉我套接字超时,尝试增加它但没有帮助。

码:

>>> import socket
>>> socket.setdefaulttimeout(2)
>>> s = socket.socket()
>>> s.connect(("192.168.95.148",21))

错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
socket.timeout: timed out
python ubuntu
1个回答
0
投票

您在socket.setdefaulttimeout(2)中设置了超时,因此它引发了异常。

试试这个:

import socket
s = socket.socket()
socket.setdefaulttimeout(10) #set timeout for ten seconds (can be whatever you want)
try:
    s.connect(("192.168.95.148",21))
except Exception as e:
    print("An error occured:\n{}".format(e))
© www.soinside.com 2019 - 2024. All rights reserved.