Untested code to get labels from wikidata in all languages.
authorNathan TeBlunthuis <nathante@uw.edu>
Wed, 25 Mar 2020 01:04:22 +0000 (18:04 -0700)
committerNathan TeBlunthuis <nathante@uw.edu>
Wed, 25 Mar 2020 01:04:22 +0000 (18:04 -0700)
translations/src/find_entities.py
translations/src/wikidata_api_calls.py

index eafb42af048ccc65c1c21b8f77f26b70b14c11df..6edce057508d1bf676cfa4009086d7f0d425f75e 100644 (file)
@@ -1,7 +1,7 @@
 # generate a list of wikidata entities related to keywords
 from os import path
 from sys import stdout
-from wikidata_api_calls import search_wikidata
+from wikidata_api_calls import search_wikidata, get_wikidata_api
 
 class Wikidata_ResultSet(object):
     def __init__(self):
@@ -13,7 +13,7 @@ class Wikidata_ResultSet(object):
 
     def to_csv(self, outfile=None):
         
-        header = ','.join(['search_term', 'entityid', 'pageid', 'search_position','timestamp'])
+        header = ','.join(['search_term', 'entityid', 'pageid', 'search_position','timestamp']) + '\n'
         if outfile is None:
             of = stdout
 
index 022a9d40354a4a1c823f8c925045c3946556299c..0f706807f5cc4b38a872c6fbb2ea01db3402dfde 100644 (file)
@@ -1,8 +1,8 @@
 # File defines functions for making api calls to find translations and transliterations for key terms.
 
 import mwapi
+import requests
 import sys
-sys.path.append("..")
 from defaults import user_agent
 
 def get_wikidata_api():
@@ -27,3 +27,7 @@ def search_wikidata(session, term, *args, **kwargs):
         raise mwapi.session.APIError(f"No results for query: {term}")
 
     return results
+
+def run_sparql_query(q):
+    results = requests.get("https://query.wikidata.org/bigdata/namespace/wdq/sparql?query={q}&format=json")
+    

Community Data Science Collective || Want to submit a patch?