Python套接字编程recv

时间:2017-05-11 18:52:31

标签: python ubuntu

我今天开始使用python,我正在研究套接字编程。我已经连接到带有套接字实例的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

1 个答案:

答案 0 :(得分: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))