Skip to main content
 首页 » 编程设计

python之套接字.gaierror : [Errno 11003] getaddrinfo failed

2025年05月04日14pander-it

 if data.find('!scan') != -1: 
 nick = data.split('!')[ 0 ].replace(':','') 
 targetip = socket.gethostbyname(str(arg)) 
 sck.send('PRIVMSG ' + chan + " :" ' scanning host' + targetip + '\r\n') 
 for i in range(20, 1025): 
     s = socket(AF_INET, SOCK_STREAM) 
     result = s.connect_ex((targetip, i)) 
     if (result == 0) : 
          s.send('PRIVMSG ' + chan + " :" 'port %d: OPEN' % (i,) + '\r\n') 
     s.close() 

我收到这个错误:

    targetip = socket.gethostbyname(str(arg)) 
socket.gaierror: [Errno 11003] getaddrinfo failed 

请您参考如下方法:

在 Windows 上,socket.gethostbyname() 调用 getaddrinfo() Winsock API 调用,错误号 11003 - WSANO_RECOVERY可能是没有设置SYSTEMROOT环境变量造成的。

在调用 socket.gethostbyname 之前检查 os.environ 是否包含 SYSTEMROOT,例如:

import os 
assert 'SYSTEMROOT' in os.environ