| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- # # -*- coding: utf-8 -*-
- # """
- # -------------------------------------------------
- # File Name: UsefulProxyCheck
- # Description : check useful proxy
- # Author : JHao
- # date: 2019/8/7
- # -------------------------------------------------
- # Change Activity:
- # 2019/8/7: check useful proxy
- # -------------------------------------------------
- # """
- # __author__ = 'JHao'
- #
- # from threading import Thread
- #
- # try:
- # from Queue import Queue, Empty # py2
- # except:
- # from queue import Queue, Empty # py3
- #
- # from util import LogHandler
- # from handler import ProxyManager
- # from helper import checkProxyUseful, Proxy
- #
- # FAIL_COUNT = 0
- #
- #
- # class UsefulProxyCheck(ProxyManager, Thread):
- # def __init__(self, queue, thread_name):
- # ProxyManager.__init__(self)
- # Thread.__init__(self, name=thread_name)
- #
- # self.queue = queue
- # self.log = LogHandler('useful_proxy_check')
- #
- # def run(self):
- # self.log.info("UsefulProxyCheck - {} : start".format(self.name))
- # self.db.changeTable(self.useful_proxy_queue)
- # while True:
- # try:
- # proxy_str = self.queue.get(block=False)
- # except Empty:
- # self.log.info("UsefulProxyCheck - {} : exit".format(self.name))
- # break
- #
- # proxy_obj = Proxy.newProxyFromJson(proxy_str)
- # proxy_obj, status = checkProxyUseful(proxy_obj)
- # if status or proxy_obj.fail_count < FAIL_COUNT:
- # self.db.put(proxy_obj)
- # self.log.info('UsefulProxyCheck - {} : {} validation pass'.format(self.name,
- # proxy_obj.proxy.ljust(20)))
- # else:
- # self.log.info('UsefulProxyCheck - {} : {} validation fail'.format(self.name,
- # proxy_obj.proxy.ljust(20)))
- # self.db.delete(proxy_obj.proxy)
- # self.queue.task_done()
- #
- #
- # def doUsefulProxyCheck():
- # proxy_queue = Queue()
- #
- # pm = ProxyManager()
- # pm.db.changeTable(pm.useful_proxy_queue)
- # for _proxy in pm.db.getAll():
- # proxy_queue.put(_proxy)
- #
- # thread_list = list()
- # for index in range(10):
- # thread_list.append(UsefulProxyCheck(proxy_queue, "thread_%s" % index))
- #
- # for thread in thread_list:
- # thread.start()
- #
- # for thread in thread_list:
- # thread.join()
- #
- #
- # if __name__ == '__main__':
- # doUsefulProxyCheck()
|