示例#1
0
def main(project_directory, ignore_files):
    authenticate("localhost:7474", "neo4j", "haruspex")
    graph_db = Graph()
    dossier = os.path.join(project_directory + "/pages")

    if os.path.exists(dossier):
        # Pour chaque fiche, analyser son contenu
        # et créer les noeuds/liens correspondants
        files = [f for f in listdir(dossier) if isfile(join(dossier, f))]

        for fiche in files:
            if (fiche not in ignore_files):
                fiche_analysee = analyseFiche(fiche, dossier, graph_db)
                ficheDocumentation(fiche_analysee, "references", dossier,
                                   ignore_files[0], graph_db)
                ficheDocumentation(fiche_analysee, "images", dossier,
                                   ignore_files[1], graph_db)
    else:
        files = [f for f in listdir(project_directory) if (isfile(join(project_directory, f)) and f.endswith('.txt'))]
        #TODO récupérer les métadonnées d'omeka sur les documents
        for document in files:
            print(document.strip(project_directory))
            fiche = Fiche(document.replace(project_directory,'').replace('.txt', ''), '', '',
                          '', '', '')
            fiche.create_node(graph_db)
示例#2
0
def main(project_directory, ignore_files):
    authenticate("localhost:7474", "neo4j", "haruspex")
    graph_db = Graph()
    dossier = os.path.join(project_directory + "/pages")

    if os.path.exists(dossier):
        # Pour chaque fiche, analyser son contenu
        # et créer les noeuds/liens correspondants
        files = [f for f in listdir(dossier) if isfile(join(dossier, f))]

        for fiche in files:
            if (fiche not in ignore_files):
                fiche_analysee = analyseFiche(fiche, dossier, graph_db)
                ficheDocumentation(fiche_analysee, "references", dossier,
                                   ignore_files[0], graph_db)
                ficheDocumentation(fiche_analysee, "images", dossier,
                                   ignore_files[1], graph_db)
    else:
        files = [
            f for f in listdir(project_directory)
            if (isfile(join(project_directory, f)) and f.endswith('.txt'))
        ]
        #TODO récupérer les métadonnées d'omeka sur les documents
        for document in files:
            print(document.strip(project_directory))
            fiche = Fiche(
                document.replace(project_directory, '').replace('.txt', ''),
                '', '', '', '', '')
            fiche.create_node(graph_db)
示例#3
0
def analyseFiche(nom_fichier, dossier, graph):
    with open(join(dossier, nom_fichier)) as f:
        content = f.readlines()
        content = [x.strip('\n') for x in content]
        fiche_contenu_list = []
        fiche_id = ''
        fiche_titre = ''
        fiche_contenu = ''
        fiche_date = ''
        fiche_auteur = ''
        fiche_references = ''
        for line in content:
            if line.startswith('fiche n°'):
                fiche_id = line.strip('fiche n°').strip()
            elif line.startswith('titre:'):
                fiche_titre = line.strip('titre:').strip()
            elif line.startswith('Références associées:'):
                fiche_references = line.strip('Références associées:').strip().split(' ')
            elif line.startswith('auteur:'):
                fiche_auteur = line.strip('auteur:').strip()
            elif line.startswith('date:'):
                fiche_date = line.strip('date:').strip()
            else:
                if line != '\n':
                    fiche_contenu_list.append(line)
        fiche_contenu = '\n'.join(fiche_contenu_list)
        fiche = Fiche(fiche_id, fiche_titre, fiche_auteur,
                      fiche_contenu, fiche_date, fiche_references)
        fiche.create_node(graph)
    return fiche
示例#4
0
def analyseFiche(nom_fichier, dossier, graph):
    with open(join(dossier, nom_fichier)) as f:
        content = f.readlines()
        content = [x.strip('\n') for x in content]
        fiche_contenu_list = []
        fiche_id = ''
        fiche_titre = ''
        fiche_contenu = ''
        fiche_date = ''
        fiche_auteur = ''
        fiche_references = ''
        for line in content:
            if line.startswith('fiche n°'):
                fiche_id = line.strip('fiche n°').strip()
            elif line.startswith('titre:'):
                fiche_titre = line.strip('titre:').strip()
            elif line.startswith('Références associées:'):
                fiche_references = line.strip(
                    'Références associées:').strip().split(' ')
            elif line.startswith('auteur:'):
                fiche_auteur = line.strip('auteur:').strip()
            elif line.startswith('date:'):
                fiche_date = line.strip('date:').strip()
            else:
                if line != '\n':
                    fiche_contenu_list.append(line)
        fiche_contenu = '\n'.join(fiche_contenu_list)
        fiche = Fiche(fiche_id, fiche_titre, fiche_auteur, fiche_contenu,
                      fiche_date, fiche_references)
        fiche.create_node(graph)
    return fiche