Exemple #1
0
def addpaper( idx, citation ):
        start=time.time()
        print(citation)
        if citation is None:
            return
        print('trying to add {} number {}'.format(citation[5], idx))
        site = pywikibot.Site("librarybase", "librarybase")
        item = librarybase.JournalArticlePage(site)
        pmcidobj = getPMCID(citation[5])
        try:
            pmcidobj.getBBasicMetadata()
        except IDNotResolvedException:
            print('Couldn\'t find in EPMC:' + citation[5])
            return
        metadata = pmcidobj.metadata
        print("Got metadata in:" + str(time.time()-start))
        if not item.articleAlreadyExists(metadata['pmcid']):
            print('Item doesn\'t seem to exist. Setting metadata for: ' + metadata['pmcid'])
            item.setMetaData(metadata)
            print("set metadata in" + str(time.time()-start))
        else:
            print("{} already exists. Doing nothing".format(metadata['pmcid']))
    def setISSN(self, issn):
        if issn:
            self.makeSimpleClaim('P14', issn)





if __name__ == '__main__':
    site = pywikibot.Site("librarybase", "librarybase")
    #repo = site.data_repositry()
    item = JournalArticlePage(site, 'Q261')

    pmcid = 'PMC3315379'

    pmcidobj = getPMCID(pmcid)
    pmcidobj.getBBasicMetadata()
    metadata = pmcidobj.metadata

    #print(item.articleAlreadyExists(metadata['pmcid']))


    #print(item.authorAlreadyExists('0000-0002-1298-7653'))

    if not item.articleAlreadyExists(metadata['pmcid']):
        print('Setting metadata for: ' + metadata['pmcid'])
        item.setMetaData(metadata)
    else:
        print("{} already exists".format(metadata['pmcid']))