Exemple #1
0
class ProxyMonitor(xbmc.Monitor):
    def __init__(self):
        xbmc.Monitor.__init__(self)
        self.proxy = None
        
    def start_proxy(self):
        if self.proxy is None:
            self.proxy = ProxyService(HTTP("127.0.0.1", PROXY_PORT))
            self.proxy.start()
        
    def close_proxy(self):
        if self.proxy is not None:
            self.proxy.stop()
            self.proxy = None

    def onSettingsChanged(self):
        use_proxy = __settings__.getSetting("use_proxy") == "true"
        if use_proxy:
            self.start_proxy()
        else:
            self.close_proxy()
Exemple #2
0
        for proxy in proxy_list:
            proxy_str = 'http://%s:%d' % (proxy.ip, proxy.port)
            print proxy_str
            #如果没有被占用,推送到可用
            if r.sismember(PROXY_REDIS_KEY_OCC, proxy_str) == False:
                r.sadd(PROXY_REDIS_KEY, proxy_str)
                logging.info("put proxy %s" % (proxy_str))
    except:
        logging.error("proxy push error ")


if __name__ == '__main__':

    host = 'localhost'
    #host='192.168.124.89'
    port = 9527

    socket = TSocket.TSocket(host, port)
    transport = TTransport.TFramedTransport(socket)

    protocol = TCompactProtocol(transport)

    client = ProxyService.Client(protocol)
    transport.open()
    #proxy_list=client.getProxyList(ProxyQuery(maxNumber=3000))
    proxy_list = client.getProxyList(ProxyQuery(maxNumber=300))

    write_list(proxy_list)

    transport.close()
Exemple #3
0
 def start_proxy(self):
     if self.proxy is None:
         self.proxy = ProxyService(HTTP("127.0.0.1", PROXY_PORT))
         self.proxy.start()