2011-01-13 4 views
0
 if data.find('!whois') != -1: 
     s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
     s.connect(("com.whois-servers.net", 43)) 
     s.send('www.msn.com' + "\r\n") 
     response = '' 
     while True: 
       d = s.recv(4096) 
       response += d 
       if d == '': 
        break 
     s.send('PRIVMSG ' + chan + " " + response + '\r\n') 
     s.close()  

입력 할 때! whois를 입력하면 채널에 아무런 문제가 없습니다. 아무 것도하지 않습니다. 잘못된 것일 수 있습니다. 어떤 도움이라도 감사 할 것입니다. 감사.IRC 내의 사이트에

참고 : 다른 소켓이 이미 연결되어 있습니다.

+0

어떤 버전의 파이썬을 사용하고 있습니까? 그리고 코드에서 작은 따옴표와 큰 따옴표를 함께 사용하지 마십시오. – orlp

+0

파이썬 2.6을 사용하고 있습니다. – SourD

답변

0

이 스 니펫은 언급 한 whois 사이트와 함께 python3.1에서 작동합니다.

#!/usr/bin/env python3 

import socket 

domain = "msn" 

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
s.connect(("com.whois-servers.net", 43)) 
s.send(("%s\r\n" % domain).encode()) 
response = "" 

while True: 
    r = s.recv(4096).decode() 
    response += r 
    if r == "": 
     break 
print(response)