# from admin.env import * from admin.utils import PrintException #from gargantext_web.settings import # # ## Django models ##from node import models # ## SQLA models from gargantext_web.db import session ################################################################################ ## If you need to reset all data ## use : ./manage.py flush ################################################################################ ################################################################################ print('Initialize hyperdata...') ################################################################################ hyperdata = { 'publication_date': 'datetime', 'authors': 'string', 'language_fullname': 'string', 'abstract': 'text', 'title': 'string', 'source': 'string', 'volume': 'string', 'text': 'text', 'page': 'string', 'doi': 'string', 'journal': 'string', } for name_, type_ in hyperdata.items(): data_ = (session.query(Hyperdata).filter( Hyperdata.name == str(name_), Hyperdata.type == str(type_) ).first() ) if data_ is None: print('Hyper Data' + name_ + 'does not existe, creating it') hyperdata = Hyperdata(name=name_, type=type_) session.add(hyperdata) session.commit() ## Integration: languages ## ################################################################################ print('Initialize languages...') ################################################################################ import pycountry ##Language.objects.all().delete() for language in pycountry.languages: pass if 'alpha2' in language.__dict__: lang = Language( iso2 = language.alpha2, iso3 = language.bibliographic, fullname = language.name, implemented = True if language.alpha2 in ['en', 'fr'] else False ) l = session.query(Language).filter(Language.iso2 == lang.iso2).first() if l is None: session.add(lang) session.commit() ################################################################################ print('Initialize users...') ################################################################################ gargantua = session.query(User).filter(User.username=='gargantua').first() if gargantua is None: from node.models import User as U gargantua = U() gargantua.username = 'gargantua' # Read specific email address here: gargantua.email = 'contact@gargantext.org' gargantua.active_user = True password = U.objects.make_random_password() print('Gargantua, password: ', password) gargantua.set_password(password) gargantua.save() ################################################################################ print('Initialize node types...') ################################################################################ node_types = [ 'Root', 'Trash', 'Project', 'Corpus', 'Document', 'MiamList', 'StopList', 'MainList', 'MapList', # TODO MiamList -> MainList 'Stem', 'Lem', 'Group', 'Tfidf', 'Tfidf (global)', 'Cvalue', 'Specificity' , 'Cooccurrence', ] for node_type in node_types: nt = NodeType(name=node_type) if session.query(NodeType).filter(NodeType.name==nt.name).first() is None: session.add(nt) session.commit() ################################################################################ print('Initialize main nodes...') ################################################################################ nodes = [] node_root = Node(user_id=gargantua.id, type_id=cache.NodeType['Root'].id, name='Root') nodes.append(node_root) node_stem = Node(user_id=gargantua.id, type_id=cache.NodeType['Stem'].id, name='Stem', parent_id=node_root.id) nodes.append(node_stem) node_lem = Node(user_id=gargantua.id, type_id=cache.NodeType['Lem'].id, name='Lem', parent_id=node_root.id) nodes.append(node_lem) for node in nodes: if session.query(Node).filter(Node.name==node.name, Node.user_id==node.user_id).first() is None: session.add(node) session.commit() ################################################################################ print('Initialize resource...') ################################################################################ from parsing.parsers_config import parsers for parser in parsers.keys(): resource = ResourceType(name=parser) if session.query(ResourceType).filter(ResourceType.name==resource.name).first() is None: session.add(resource) session.commit() ################################################################################ #### Instantiante table NgramTag: ################################################################################ ###f = open("part_of_speech_labels.txt", 'r') ### ###for line in f.readlines(): ### name, description = line.strip().split('\t') ### _tag = Tag(name=name, description=description) ### session.add(_tag) ###session.commit() ### ###f.close() ## ## from ngram.stop import importStopList root = session.query(Node).filter(Node.type_id==cache.NodeType['Root'].id).first() importStopList(root, '/srv/gargantext/init/stop_lists/fr.txt', 'fr') importStopList(root, '/srv/gargantext/init/stop_lists/en.txt', 'en') root = session.query(Node).filter(Node.type_id==cache.NodeType['Root'].id).first() #importStopList(root, '/srv/gargantext/init/stop_lists/fr.txt', 'fr') importStopList(root, '/srv/gargantext/init/stop_lists/en.txt', 'en') #exit()