J'ai sécurisé mon point de terminaison SPARQL via les comptes SQL selon VirtSPARQLProtectSQLDigestAuthentication.SPARQLWrapper Erreur HTTP 401: non autorisée
Avant cette opération, je peux obtenir les données via le code:
from SPARQLWrapper import SPARQLWrapper, JSON, DIGEST
sparql = SPARQLWrapper("http://example.org/sparql")
sparql.setQuery("...")
sparql.setReturnFormat(JSON)
results = sparql.query().convert()
Et après cela, je l'utilise comme DIGEST pour obtenir les données,
from SPARQLWrapper import SPARQLWrapper, JSON, DIGEST
sparql = SPARQLWrapper("http://example.org/sparql")
sparql.setHTTPAuth(DIGEST)
sparql.setCredentials('login', 'password')
sparql.setQuery("...")
sparql.setReturnFormat(JSON)
results = sparql.query().convert()
, erreur 401 est produite:
Traceback (most recent call last): File "1.py", line 21, in results = sparql.query().convert() File "/usr/local/lib/python2.7/site-packages/SPARQLWrapper/Wrapper.py", line 601, in query return QueryResult(self._query()) File "/usr/local/lib/python2.7/site-packages/SPARQLWrapper/Wrapper.py", line 581, in _query raise e urllib2.HTTPError: HTTP Error 401: Unauthorized
Quelque chose ne va pas avec mes opérations? Le nom d'utilisateur et le mot de passe sont corrects.
Appréciez que si quelqu'un peut vous aider.