RawProxyCheck.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. # # -*- coding: utf-8 -*-
  2. # """
  3. # -------------------------------------------------
  4. # File Name: RawProxyCheck
  5. # Description : check raw_proxy to useful
  6. # Author : JHao
  7. # date: 2019/8/6
  8. # -------------------------------------------------
  9. # Change Activity:
  10. # 2019/8/6: check raw_proxy to useful
  11. # -------------------------------------------------
  12. # """
  13. # __author__ = 'JHao'
  14. #
  15. # from threading import Thread
  16. #
  17. # try:
  18. # from Queue import Empty, Queue # py2
  19. # except:
  20. # from queue import Empty, Queue # py3
  21. #
  22. # from util import LogHandler
  23. # from handler import ProxyManager
  24. # from helper import Proxy, checkProxyUseful
  25. #
  26. #
  27. # class RawProxyCheck(ProxyManager, Thread):
  28. # def __init__(self, queue, thread_name):
  29. # ProxyManager.__init__(self)
  30. # Thread.__init__(self, name=thread_name)
  31. # self.log = LogHandler('raw_proxy_check')
  32. # self.queue = queue
  33. #
  34. # def run(self):
  35. # self.log.info("RawProxyCheck - {} : start".format(self.name))
  36. # self.db.changeTable(self.useful_proxy_queue)
  37. # while True:
  38. # try:
  39. # proxy_json = self.queue.get(block=False)
  40. # except Empty:
  41. # self.log.info("RawProxyCheck - {} : exit".format(self.name))
  42. # break
  43. #
  44. # proxy_obj = Proxy.newProxyFromJson(proxy_json)
  45. #
  46. # proxy_obj, status = checkProxyUseful(proxy_obj)
  47. # if status:
  48. # if self.db.exists(proxy_obj.proxy):
  49. # self.log.info('RawProxyCheck - {} : {} validation exists'.format(self.name,
  50. # proxy_obj.proxy.ljust(20)))
  51. # else:
  52. # self.db.put(proxy_obj)
  53. # self.log.info(
  54. # 'RawProxyCheck - {} : {} validation pass'.format(self.name, proxy_obj.proxy.ljust(20)))
  55. # else:
  56. # self.log.info('RawProxyCheck - {} : {} validation fail'.format(self.name, proxy_obj.proxy.ljust(20)))
  57. # self.queue.task_done()
  58. #
  59. #
  60. # def doRawProxyCheck():
  61. # proxy_queue = Queue()
  62. #
  63. # pm = ProxyManager()
  64. # pm.db.changeTable(pm.raw_proxy_queue)
  65. # for _proxy in pm.db.getAll():
  66. # proxy_queue.put(_proxy)
  67. # pm.db.clear()
  68. #
  69. # thread_list = list()
  70. # for index in range(20):
  71. # thread_list.append(RawProxyCheck(proxy_queue, "thread_%s" % index))
  72. #
  73. # for thread in thread_list:
  74. # thread.start()
  75. #
  76. # for thread in thread_list:
  77. # thread.join()
  78. #
  79. #
  80. # if __name__ == '__main__':
  81. # doRawProxyCheck()