-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
37 lines (28 loc) · 954 Bytes
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import logging
import traceback
import urllib2
from . import settings, utils
logging.basicConfig(level=settings.LOG_LEVEL or logging.ERROR)
try:
# Custo signals
from . import signals
except ImportError:
logging.info("Custom signals not installed.")
pass
feeders = []
for feeder in settings.FEEDERS:
feeders.append(utils.import_class(feeder)(settings))
downloads = []
for feeder in feeders:
try:
for feed in feeder.feed():
downloads.append(feed)
except (IOError, urllib2.URLError, urllib2.HTTPError) as err:
logging.error('%s on %s: %s' % (type(err).__name__, type(feeder).__name__, err))
except Exception as err:
logging.error('%s on %s: %s' % (type(err).__name__, type(feeder).__name__, err))
logging.error(traceback.format_exc())
if downloads:
utils.save_series(settings, settings.SERIES)
if settings.EMAIL_USER:
utils.send_email(downloads, settings)