pylod是一个python包装器,用于从公共sparql服务的端点公开链接的开放数据。

PyLOD的Python项目详细描述


挂架

是一个用于公开公共服务端点的链接公开数据的Python包装器。它作为一个抽象层,用于检索结构化数据,如类、属性和个体,而不需要任何关于SPARQL的知识。

开始

pylod是python的最小模块(2.x.和3.x)。

先决条件

SPARQLWrapper - SPARQLWrapper是一个围绕SPARQL服务的简单Python包装器,用于远程执行查询。

安装

  • 手动

  1. 安装SPARQLWrapper
  2. PyLOD.py保存到项目目录。
  • 来自PYPI

pip install PyLOD

用法

1。导入Pylod类并创建Pylod类对象。

fromPyLODimportPyLODpylod=PyLOD()

2。提供所需名称空间的字典

my_namespaces={"dbo":"http://dbpedia.org/ontology/","dbp":"http://dbpedia.org/property/"}pylod.namespaces.set_namespaces(my_namespaces)

这个步骤是可选的,因为pylod已经包含了一组已知的名称空间。要获取已定义名称空间的列表,请使用以下命令:

print(pylod.namespaces.get_namespaces())

3。定义要查询的SPARQL端点字典:< /强>

my_endpoints={"DBpedia":"http://dbpedia.org/sparql","GeoLinkedData":"http://linkedgeodata.org/sparql"}pylod.endpoints.set_endpoints(my_endpoints)

如果没有定义端点,pylod将使用一组预定义的已知端点。要获取这些端点的列表,请执行以下操作:

print(pylod.endpoints.get_endpoints())

^{str 1}4美元。使用pylod的expose函数从端点检索结构化数据。 设置可选参数limit_per_endpoint以限制每个端点的结果。例如:

# Get entities of type owl:Classclasses=pylod.expose.classes(limit_per_endpoint=100)# Get the sub-classes of a specific class sub_classes=pylod.expose.sub_classes(super_class="dbo:Artist")# Get instances of a specific class instances=pylod.expose.instances_of_class(cls="dbo:Artist",include_subclasses=True,limit_per_endpoint=50)# Execute custom SPARQL select query to all endpointsresults=pylod.sparql.execute_select_to_all_endpoints(query="SELECT * WHERE {?s ?p ?o}")

公开函数:

  • classes()-返回类实体
  • sub戋classes()-返回给定类的子类
  • super_classes()-返回给定类的超级类
  • 等价类()-返回给定类的等价类
  • disjoint_classes()-返回给定类的不相交类
  • sub\u properties()-返回给定属性的子属性
  • super_properties()-返回给定属性的超级属性
  • triples()-允许检索模式中的三元组(主谓对象)
  • subjects()-返回给定谓词对象对的主题
  • predicates()-返回给定主题-对象对的谓词
  • objects()-返回给定主谓对的对象
  • instances_of_class()-返回给定类类型的实例
  • labels()-返回给定实体的标签,带有可选的语言参数

SPARQL函数:
  • {STR 1 } $ ExuCuTeTeLead()允许对给定端点URL
  • 执行自定义SPARQL选择查询
  • {STR 1 } ExuuTeTeCopyToToAlLoEnthPosiPosits()/Stime>允许对{{CD4}}[L/LI]中定义的所有端点执行自定义SPARQL选择查询
  • {STR 1 } $ISAcActuvio终结点()/Stime> -检查给定端点URL是否生存,并响应SPARQL查询

文档

The official webpage-The Docs

作者

应用程序

Pylod已部署在以下项目中:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java:字符串。RTL设备语言用标志“+”格式化,数字后加符号   java GAE作为桌面应用程序(Swing)的服务提供商   java将InputStream转换为FileInputStream不适用于Apache POI   java外部Voronoi库“网格”:什么是草图和处理?   重载重写的泛型方法java   java显示组织上设置的错误。springframework。验证。jsp中的错误对象   java一些Spring模型属性没有显示在我的JSP中   java无法编译Guava 23的SimpleTimeLimiter示例   java如何更改JTree中的“根”目录名?   java如何在安卓中对相对布局产生连锁反应?   java错误:org。冬眠例外SQLGrammarException:无法提取结果集,dateAccessed是未知列   如何使用java监听JSON文件更新   由抽象封闭类创建的匿名内部类能否通过反射确定实现类?