Example #1
0
    def get(self):
        """
        Handler for the cronjob: /cron/n3caching
        It stores ntriples texts from external sources
        """
        from scripts.remote.remote import google_urlfetch

        for k, v in map.items():
            results = query(v)  # run the SPARQL query

            results = json.loads(results)
            urls = [
                r['bodies']['value'] for r in results['results']['bindings']
            ]

            for u in urls:
                print u
                l = get_link(u)
                j = dbpedia_url(l)
                print j
                try:
                    response = google_urlfetch(j)
                    if response.startswith(
                            '<http:') and N3Cache.get_by_id(j) is None:
                        n3 = N3Cache(id=j, n3=response)
                        n3.put()
                    else:
                        print response
                except Exception as e:
                    print e
Example #2
0
 def get(self):
     if self.request.get('query'):
         self.response.headers['Access-Control-Allow-Origin'] = '*'
         self.response.headers['Content-Type'] = 'application/sparql-results+json; charset=utf-8'
         print(self.request.get('query'))
         return self.response.write(query(self.request.get('query')))
     return self.response.write("Query not defined")
    def get(self):
        """
        Handler for the cronjob: /cron/n3caching
        It stores XML data from external sources
        """
        from google.appengine.api import urlfetch
        logging.getLogger().handlers[0].setLevel(logging.DEBUG)

        for k, v in map.items():
            results = query(v)  # run the SPARQL query

            results = json.loads(results)
            urls = [r['bodies']['value'] for r in results['results']['bindings']]

            for u in urls:
                l = dbpedia_url(get_link(u))
                if l.endswith('.ntriples'):
                    l = l[:-9]
                print l
                try:
                    response = urlfetch.fetch(l)
                    if response.startswith('<?xml version="1.0"') and N3Cache.get_by_id(l) is None:
                        n3 = N3Cache(id=l, n3=response.content)
                        n3.put()
                    else:
                        print "ERROR: NO XML: " + str(response)
                except Exception as e:
                    print e
 def test_basic_sparql(self):
     from flankers.graphtools import query
     try:
         for t in fulltest:
             print t + "\n" + query(t)
     except Exception:
         assert False
Example #5
0
 def get(self):
     if self.request.get('query'):
         self.response.headers['Access-Control-Allow-Origin'] = '*'
         self.response.headers[
             'Content-Type'] = 'application/sparql-results+json; charset=utf-8'
         print(self.request.get('query'))
         return self.response.write(query(self.request.get('query')))
     return self.response.write("Query not defined")
Example #6
0
 def post(self):
     if self.request.get('query'):
         jcontent = json.loads(query(self.request.get('query')))
         params = {
             'result': json2html.convert(json=jcontent['results']),
             'status': 200,
             'query': urllib.unquote(self.request.get('query')).decode('utf8')
         }
         path = os.path.join(_PATH, 'index.html')
         return self.response.out.write(template.render(path, params))
     return self.response.set_status(405)
Example #7
0
 def post(self):
     if self.request.get("query"):
         jcontent = json.loads(query(self.request.get("query")))
         params = {
             "result": json2html.convert(json=jcontent["results"]),
             "status": 200,
             "query": urllib.unquote(self.request.get("query")).decode("utf8"),
         }
         path = os.path.join(_PATH, "index.html")
         return self.response.out.write(template.render(path, params))
     return self.response.set_status(405)
 def post(self):
     if self.request.get('query'):
         jcontent = json.loads(query(self.request.get('query')))
         params = {
             'result': json2html.convert(json=jcontent['results']),
             'status': 200,
             'query':
             urllib.unquote(self.request.get('query')).decode('utf8')
         }
         path = os.path.join(_PATH, 'index.html')
         return self.response.out.write(template.render(path, params))
     return self.response.set_status(405)