aebba782834ea81b9aa94c3c0b90d4d9c443bcd5
1 # -*- encoding: utf-8 -*-
2 import sys
, os
, time
, traceback
3 from auf_savoirs_en_partage
.backend_config
import RESOURCES
4 from savoirs
.models
import HarvestLog
8 """Cette méthode effectue l'importation des données pour toutes les
9 sources définies dans `conf.py`, et les ajoute dans le système de stockage
10 en passant par SEP (:doc:`../sep/index`)
15 if len(sys
.argv
) == 2:
17 if RESOURCES
.get(name
) is not None:
18 resources
= {name
: RESOURCES
.get(name
)}
20 print "Ressource %s non existante" % name
23 for name
in resources
.keys ():
25 options
= RESOURCES
[name
]
26 options
['server'] = name
28 module
= 'harvesters.%s.%s' \
29 % (options
['type'], options
['acces'])
31 harvester
= sys
.modules
[module
]
33 nodes
= harvester
.harvest (options
)
37 traceback
.print_exc(file=sys
.stdout
)
46 status
= sep
.add (node
)
48 message
.update({'context':'error', 'name':name
, 'processed':0})
49 HarvestLog
.add(message
)
57 message
.update({'context':'record', 'name':name
, 'processed':1})
58 HarvestLog
.add(message
)
60 message
= {'context':'moisson', 'name':name
, 'added':added
, 'updated':updated
, 'processed':len(nodes
)}
61 HarvestLog
.add(message
)
65 if __name__
== '__main__':