comparison myrss/myrss_app.py @ 95:f111261bf40a

myrss: update FEEDS
author paulo
date Sun, 08 Jul 2018 02:46:02 -0600
parents 583400dc28a0
children 259a484f691b
comparison
equal deleted inserted replaced
10:9c2dd6337045 11:7c46cfd8542c
7 import datetime 7 import datetime
8 import time 8 import time
9 import traceback 9 import traceback
10 10
11 import logging 11 import logging
12 logging.basicConfig( 12 #logging.basicConfig(
13 #level=logging.DEBUG, 13 # level=logging.DEBUG,
14 #filename="_LOG", 14 # filename="_LOG",
15 #format="%(asctime)s %(levelname)-8s %(message)s", 15 # format="%(asctime)s %(levelname)-8s %(message)s",
16 ) 16 #)
17 17
18 import xml.etree.ElementTree 18 import xml.etree.ElementTree
19 import HTMLParser 19 import HTMLParser
20 20
21 import html 21 import html
215 215
216 def main(input_queue, output_queue, lock): 216 def main(input_queue, output_queue, lock):
217 ret = '' 217 ret = ''
218 218
219 with lock: 219 with lock:
220 logging.debug("main() started")
220 epoch_now = time.time() 221 epoch_now = time.time()
221 dtnow = datetime.datetime.fromtimestamp(epoch_now) 222 dtnow = datetime.datetime.fromtimestamp(epoch_now)
222 223
223 if os.path.exists(CACHE_HTML_FILE) and (epoch_now - os.stat(CACHE_HTML_FILE).st_mtime) < float(CACHE_LIFE): 224 if os.path.exists(CACHE_HTML_FILE) and (epoch_now - os.stat(CACHE_HTML_FILE).st_mtime) < float(CACHE_LIFE):
224 with open(CACHE_HTML_FILE) as cache_html_file: 225 with open(CACHE_HTML_FILE) as cache_html_file:
248 return ret 249 return ret
249 250
250 251
251 class MyRssApp: 252 class MyRssApp:
252 def __init__(self): 253 def __init__(self):
254 logging.debug("MyRssApp.__init__() called")
253 self._iq = Queue.Queue(MAX_THREADS) 255 self._iq = Queue.Queue(MAX_THREADS)
254 self._oq = Queue.Queue(MAX_THREADS) 256 self._oq = Queue.Queue(MAX_THREADS)
255 self._main_lock = threading.Lock() 257 self._main_lock = threading.Lock()
256 258
257 for _ in range(MAX_THREADS): 259 for i in range(MAX_THREADS):
260 logging.debug("Starting thread: %d" % i)
258 WorkerThread(input_queue=self._iq, output_queue=self._oq).start() 261 WorkerThread(input_queue=self._iq, output_queue=self._oq).start()
259 262
260 def __call__(self, environ, start_response): 263 def __call__(self, environ, start_response):
261 response_code = "500 Internal Server Error" 264 response_code = "500 Internal Server Error"
262 response_type = "text/plain; charset=UTF-8" 265 response_type = "text/plain; charset=UTF-8"