From ef764f4bfd62d149e6297bdc0b20457e244b1f54 Mon Sep 17 00:00:00 2001 From: corsaronero Date: Sun, 26 Feb 2023 18:37:55 +0000 Subject: [PATCH] added function to automate entity creation on wikidata --- main.py | 6 ++- wikidata/.wdPEP.py.kate-swp | Bin 166 -> 0 bytes wikidata/__pycache__/wdPEP.cpython-310.pyc | Bin 1841 -> 2881 bytes wikidata/wdPEP.py | 44 ++++++++++++++++++++- 4 files changed, 47 insertions(+), 3 deletions(-) delete mode 100644 wikidata/.wdPEP.py.kate-swp diff --git a/main.py b/main.py index 3924fd0..38fd8a2 100644 --- a/main.py +++ b/main.py @@ -24,6 +24,8 @@ listOfCountries = ['nicaragua'] wikidataPEP = WikidataPEP(config) -wikidataPEP.importMembersOfParliamentDict(listOfCountries) +#wikidataPEP.importMembersOfParliamentDict(listOfCountries) -wikidataPEP.checkForEntityIds(listOfCountries) +#wikidataPEP.checkForEntityIds(listOfCountries) + +wikidataPEP.createMemberOnWikidata() diff --git a/wikidata/.wdPEP.py.kate-swp b/wikidata/.wdPEP.py.kate-swp deleted file mode 100644 index a625c467f70dbe3c0f95364e194a4a9e00ff2161..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166 zcmZQzU=Z?7EJ;-eE>A2_aLdd|RWQ;sU|?VnNsn5*L_p}&eD1TS5_C?@ZC%aJkQ*EX qlyL!K5D@VM5-^T{0vd2dQ7eF~mIqm>Yj8N!7#@%sS0DxfR5butKN%VT diff --git a/wikidata/__pycache__/wdPEP.cpython-310.pyc b/wikidata/__pycache__/wdPEP.cpython-310.pyc index f17702db786f2f4a674a1696a99dbc9a668782dd..58b3c2f49f8dfb5375cae500e9747aa2bd0106be 100644 GIT binary patch delta 1157 zcmZ8g%Wm676y-ytD4L>_)JYq_Db%ECluZE8@TBY^bfjd@6f5;c8EE1&*hz&d(X_gHh;NoCiS{5 zK#P9-(?4sxGGpii}j}RzF4gHlr6xolpg^9 zP}VD7`g4Iuj zOgz?b6>GS5Cgo}-Wh&Os#JrkS@CG(;9lTm5V-q*PUP*ZkNV6nTu4mdz%r`O}(8y|l z^{jeaJJ&CS+|115jbj7fz&G(*XOIl=ddWAhxOv{lHZDX_V9m@tzi}aa2R0T!jawti zE48GewwwgxFqs80y(6qjmwxaKBQ!?gcw{~7I zHc#(&I?Ls?e9ER@S4TTlqSTh>nBg~6-NX)+(j)Ki}hSG_&g z^(u#5d*EqLySD2N_xgoI;>9fpeSm0~q^(DbXhJAUT1Sgte?A2XwGhR#1)7m^!PD(g z;3JB_6Sqc)1qmqG+D}swO~RAbLo#2m6YC~@k0-Lj;SNt@i)*%;pp*nLBQuIvLfc$W zb}}a^wRqsiJn$|L{9hbDL#TKf%*uoE)F=B3_M%6(VL~CtWLc;onvgIpowvmr7pO=@50SL@1ekaf6n8=sMs4}rul_i)#lVjt$R2I%Cw&a||%-rIr$ug`e zj8T&vS!IA^9P3md`Gs{dv!5p0Oj@(4_R&lLm!D)bo) diff --git a/wikidata/wdPEP.py b/wikidata/wdPEP.py index 675aa3a..6b30450 100644 --- a/wikidata/wdPEP.py +++ b/wikidata/wdPEP.py @@ -66,5 +66,47 @@ class WikidataPEP(object): print(name) print('is a human') - + + + + def createMemberOnWikidata(self): + + from wikibaseintegrator import wbi_login, WikibaseIntegrator + from wikibaseintegrator.datatypes import ExternalID, Item + from wikibaseintegrator.wbi_config import config as wbi_config + + wbi_config['USER_AGENT'] = 'PEPimport/1.0 (https://www.wikidata.org/wiki/User:Username)' + + # login object + login_instance = wbi_login.OAuth2(consumer_token='', consumer_secret='') + + wbi = WikibaseIntegrator(login=login_instance) + + # data type object, e.g. for a NCBI gene entrez ID + isHuman = Item(value='Q5', prop_nr='P31') + occupationPolitician = ExternalID(value='Q82955', prop_nr='P106') + occupationDeputy = ExternalID(value='Q1055894', prop_nr='P106') + #referenceURL = URL(value='http://legislacion.asamblea.gob.ni/Tablas%20Generales.nsf/InfoDiputado.xsp?documentId=3D4CFDC4B3006D70062587C5007C29E1&action=openDocument&SessionID=1868803A06AB73D50B7F89BD0AB', prop_nr='P106') + + # print(isHuman) + # print(referenceURL) + + # data goes into a list, because many data objects can be provided to + data1 = [isHuman] + data2 = [occupationDeputy] + data3 = [occupationPolitician] + + # Create a new item + item = wbi.item.new() + + # Set an english label + item.labels.set(language='en', value='Carlos Humberto Ruíz') + + # Set a French description + item.descriptions.set(language='en', value='Nicaraguan National Assembly Deputy') + + item.claims.add(data1) + #item.claims.add(data2) + #item.claims.add(data3) + print(item.write())