我在运行以下程序时遇到问题(sparql_test.py
)。我在Linux机器上运行它。我在同一台Linux机器上安装Virtuoso服务器。在Linux服务器中,我既没有sudo
权限,也没有浏览器访问权限。但是,我可以从isql
提示符(SQL>
)成功地执行SPARQL查询。在
程序:sparql_test.py
from SPARQLWrapper import SPARQLWrapper, JSON
sparql = SPARQLWrapper("http://localhost:8890/sparql")
sparql.setQuery("select ?s where { ?s a <http://ehrofip.com/data/Admissions>.} limit 10")
sparql.setReturnFormat(JSON)
result = sparql.query().convert()
for res in result["results"]["bindings"]:
print(res)
我得到了以下错误:
^{pr2}$然而,上述程序在我自己的笔记本电脑上运行得很顺利。有什么问题吗?这是连接问题吗?在
谢谢你
最好的
苏雷什
我不相信这个错误是由大师提出的。我相信它是由SPARQLWrapper提出的。在
外部世界(包括Linux机器本身)和端口
8890
上的Virtuoso侦听器之间似乎存在某种联系。“坏网关”表明可能有两种东西:反向代理和防火墙。在端口8890(在INI文件中设置为
[HttpServer]:Listen
)必须对通信开放,直接或代理,SPARQL访问才能工作。在iSQL与端口1111通信(在INI文件中设置为
[Parameters]:Listen
),该端口显然没有类似的块/代理。在相关问题 更多 >
编程相关推荐