예제 #1
0
def relate_structures(cfg,log,db, pm):
    try:
        log.info('Merging Training and Result Sets...')
        rows = db.getData(cfg.sqlCopyTrainingSetIntoLiterature).fetchall()
        for row in rows:
            article = pm.get_pubmed_article(row['pubmed_id'])
            pm.save_pubmed_article(row['pubmed_id'], article, 'Literature')
        
        if cfg.FullReload:
            db.executeCommand(cfg.sqlTruncateRel)

        candidates = db.getData(cfg.sqlSelectCandidates).fetchall()

        for addFile in candidates:
            key = addFile['pdbID']
            f = PDB.parse_prody(cfg,key)
            if f.journal.pmid != "":
                db.executeCommand(cfg.sqlInsertRel, (addFile['pdbID'], f.journal.pmid, 'Originator'))
                log.info('Opening article to find references to structures...')
                fileName = pm.get_related_pubmed_articles(f.journal.pmid)
                for item in fileName[0]['LinkSetDb'][0]['Link']:
                    db.executeCommand(cfg.sqlInsertRel, (addFile['pdbID'], item['Id'], 'Related'))

        db.commit()
    except:
        db.rollback()
        log.error(traceback.format_exc())
        raise Exception('Training Set was not built.')
예제 #2
0
def relate_structures(cfg, log, db, pm):
    try:
        log.info('Merging Training and Result Sets...')
        rows = db.getData(cfg.sqlCopyTrainingSetIntoLiterature).fetchall()
        for row in rows:
            article = pm.get_pubmed_article(row['pubmed_id'])
            pm.save_pubmed_article(row['pubmed_id'], article, 'Literature')

        if cfg.FullReload:
            db.executeCommand(cfg.sqlTruncateRel)

        candidates = db.getData(cfg.sqlSelectCandidates).fetchall()

        for addFile in candidates:
            key = addFile['pdbID']
            f = PDB.parse_prody(cfg, key)
            if f.journal.pmid != "":
                db.executeCommand(
                    cfg.sqlInsertRel,
                    (addFile['pdbID'], f.journal.pmid, 'Originator'))
                log.info('Opening article to find references to structures...')
                fileName = pm.get_related_pubmed_articles(f.journal.pmid)
                for item in fileName[0]['LinkSetDb'][0]['Link']:
                    db.executeCommand(
                        cfg.sqlInsertRel,
                        (addFile['pdbID'], item['Id'], 'Related'))

        db.commit()
    except:
        db.rollback()
        log.error(traceback.format_exc())
        raise Exception('Training Set was not built.')
예제 #3
0
def build_training_set(cfg, log, db, pm):
    try:
        listAdded = []

        if cfg.FullReload:
            db.executeCommand(cfg.sqlTruncateTrainingSet)

        log.info('Getting Reference articles...')
        candidates = db.getData(cfg.sqlSelectCandidates).fetchall()

        for addFile in candidates:
            key = addFile[0]
            f = PDB.parse_prody(cfg, key)
            if f.status == 'Imported' and (
                    f.journal.pmid not in listAdded) and f.journal.pmid != "":
                article = pm.get_pubmed_article(f.journal.pmid)
                pm.save_pubmed_article(f.journal.pmid, article, 'Training')
                listAdded.append(f.journal.pmid)

        db.commit()
    except:
        log.error(traceback.format_exc())
        db.rollback()
        raise Exception('Training Set was not built.')
예제 #4
0
    try:
        listAdded = []
<<<<<<< HEAD

=======
            
>>>>>>> origin/master
        if cfg.FullReload:
            db.executeCommand(cfg.sqlTruncateTrainingSet)

        log.info('Getting Reference articles...')
        candidates = db.getData(cfg.sqlSelectCandidates).fetchall()

        for addFile in candidates:
            key = addFile['pdbID']
            f = PDB.parse_prody(cfg,key)
            if (f.journal.pmid not in listAdded) and f.journal.pmid != "":
                article = pm.get_pubmed_article(f.journal.pmid)
                pm.save_pubmed_article(f.journal.pmid,article,'Training')
                listAdded.append(f.journal.pmid)

        db.commit()
    except:
        log.error(traceback.format_exc())
        db.rollback()
        raise Exception('Training Set was not built.')

def search_literature(cfg,log,db,pm):
    try:
        if cfg.FullReload:
            db.executeCommand(cfg.sqlTruncateLiterature)