MCPcopy Create free account
hub / github.com/Python3WebSpider/ProxyPool / Scheduler

Class Scheduler

proxypool/scheduler.py:18–141  ·  view source on GitHub ↗

scheduler

Source from the content-addressed store, hash-verified

16
17
18class Scheduler():
19 """
20 scheduler
21 """
22
23 def run_tester(self, cycle=CYCLE_TESTER):
24 """
25 run tester
26 """
27 if not ENABLE_TESTER:
28 logger.info('tester not enabled, exit')
29 return
30 tester = Tester()
31 loop = 0
32 while True:
33 logger.debug(f'tester loop {loop} start...')
34 tester.run()
35 loop += 1
36 time.sleep(cycle)
37
38 def run_getter(self, cycle=CYCLE_GETTER):
39 """
40 run getter
41 """
42 if not ENABLE_GETTER:
43 logger.info('getter not enabled, exit')
44 return
45 getter = Getter()
46 loop = 0
47 while True:
48 logger.debug(f'getter loop {loop} start...')
49 getter.run()
50 loop += 1
51 time.sleep(cycle)
52
53 def run_server(self):
54 """
55 run server for api
56 """
57 if not ENABLE_SERVER:
58 logger.info('server not enabled, exit')
59 return
60 if IS_PROD:
61 if APP_PROD_METHOD == APP_PROD_METHOD_GEVENT:
62 try:
63 from gevent.pywsgi import WSGIServer
64 except ImportError as e:
65 logger.exception(e)
66 else:
67 http_server = WSGIServer((API_HOST, API_PORT), app)
68 http_server.serve_forever()
69
70 elif APP_PROD_METHOD == APP_PROD_METHOD_TORNADO:
71 try:
72 from tornado.wsgi import WSGIContainer
73 from tornado.httpserver import HTTPServer
74 from tornado.ioloop import IOLoop
75 except ImportError as e:

Callers 2

run.pyFile · 0.90
scheduler.pyFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected