2016-05-09 2 views
0

Здравствуйте я так запутался, почему я получаю эту ошибкуPython VNC ошибка IP Scanner

Код:

#!/usr/bin/python -w 
import random 
import socket 
from random import randint 

username = 'admin' 
password = 'admin' 

print 'Format:' 
print '101.109' 
range = raw_input("Range: ") 

def main(): 
    return '%s.%i.%i' % (range, rand(), rand()) 

def rand(): 
    return randint (1,254) 

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 

while True: 
    print 'Scanning %s:%s - %s' % (username, password, main()) 
    port = (5900) 
    s.connect((main(), port)) 

Код ошибки:

Format: 
101.109 
Range: 101.109 
Scanning admin:admin - 101.109.154.9 
Traceback (most recent call last): 
    File "C:\Users\Aries\Desktop\crap\Reflect.py", line 24, in <module> 
    s.connect((main(), port)) 
    File "C:\Python27\lib\socket.py", line 228, in meth 
    return getattr(self._sock,name)(*args) 
socket.error: [Errno 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 

Так что мой друг хотел, чтобы я сделайте VNC IP-сканер, так что то, что я делаю, и им, чтобы он пытался подключиться к нему, находит фактические VNC ips, но когда он делает это, я получаю сообщение об ошибке, как вы видите вверху

EDIT: ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ

Мне нужно знать, как я могу сделать это не дает мне сообщение об ошибке, если соединение не до

+0

Выгоду исключение обрабатывает его, как вы хотите: https://docs.python.org/2/tutorial/errors.html#handling-exceptions, или https://wiki.python.org/moin/HandlingExceptions – TessellatingHeckler

ответ

0

Оберните connect в try/except блоке:

Host = main() 
try: 
    s.connect((Host, port)) 
    print "Port {} is open on host {}".format(port, Host) 
except: 
    print "Connection failed" # or just pass 
+0

вы только что зафиксировали его Большое спасибо. –

+0

@AriesFangz, добро пожаловать! – ForceBru