Multithreading Sock's Cheker PHP: #!/usr/bin/env python2.5 #c0ded by De-visible import pycurl import urllib import time import threading import Queue from cStringIO import StringIO import signal WORKERS = 250 # максимальное число потоков q = Queue.Queue() good_prox = [] def AboutScript(): print """ ###############About################ # # # [Sock's cheker]Script v # # # #___c0ded by De-visible____________# #___GreetZ to antichat.ru__________# #___ICQ: 22-3333-575_______________# #___special for antichat's users___# #___(c)2008________________________# #################################### \n\n""" def check_socks5(target, ptype=None): ip, port = target.split(':') curl = pycurl.Curl() io = StringIO() curl.setopt(pycurl.URL, 'http://ya.ru/')# сайт для коннекта(проверка сокса) #curl.setopt(pycurl.VERBOSE, 1) curl.setopt(pycurl.CONNECTTIMEOUT, 5) curl.setopt(pycurl.TIMEOUT, 100)# таймаут curl.setopt(pycurl.USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11') curl.setopt(pycurl.WRITEFUNCTION, io.write) curl.setopt(pycurl.NOSIGNAL, 1) if ptype: if ptype == 'socks5': curl.setopt(pycurl.PROXYTYPE, pycurl.PROXYTYPE_SOCKS5) elif ptype == 'socks4': curl.setopt(pycurl.PROXYTYPE, pycurl.PROXYTYPE_SOCKS4) elif ptype == 'http': curl.setopt(pycurl.PROXYTYPE, pycurl.PROXYTYPE_HTTP) curl.setopt(pycurl.PROXY, ip) curl.setopt(pycurl.PROXYPORT,int(port) ) try: curl.perform() except pycurl.error, msg: pass else: res = ':'.join((ip, port.strip())) good_prox.append(res) finally: curl.close() io.close() def chek_sock(ptype=None): global q while True: try: item = q.get_nowait() except Queue.Empty: break check_socks5(item, ptype) def check_proxy(servers, ptype): global q global good_prox for item in servers: q.put(item) for i in xrange(WORKERS): t = threading.Thread(target=chek_sock, args=(ptype,)) t.setDaemon(False) t.start() while threading.activeCount() != 1: time.sleep(5) else: return good_prox AboutScript() if __name__ == '__main__': #import sys #после подключения модуля можно получать путь к файлу через #командную строку f = open('sock.txt', 'r')#список sock's, здесь можно использовать #получение пути к файлу через командную строку, модуль sys good = check_proxy(f.readlines(), ptype='socks5') for p in good : print p P.S. задание....
как бы раздел то не для привата. Приват вон удаляют только так. Раздел что бы свои знания показать. Разве шелл от d_x'a можно назвать приватом? шелл как шелл