doap(项目描述)rdf的命令行工具和库。

doapfiend的Python项目详细描述


doapfend是一个命令行客户机和库,用于获取、显示、创建和操作DOAP(项目描述)文件。

doapfend使用rdfalchemy/rdflib作为orm来查询和创建doap。

有关epydoc生成的api文档,请参见docs/api

功能

  • Display metadata in DOAP in a human-readable format
  • Get DOAP by a !SourceForge, Freshmeat, PyPI, Ohloh etc. project name
  • Search all DOAP spidered on the web (pingthesemanticweb.com)
  • Access the metadata in the DOAP file using Python dot notation
  • Fetch DOAP by using the short name of a DOAP PURL doapurl.org
  • Fetch and display DOAP mentioned in FOAF by project homepage
  • Written in Python (Yes, that’s a feature.)
  • Extensible with plugins using setuptools

提供可选插件

  • Generate a web page with CSS from a DOAP file (using hdoap)
  • Search for DOAP using a Gentoo Linux pacakge name (Thanks GLEP 46)

开发中的插件

  • Search for DOAP by names you know, such as your distribution’s package names
  • Create a Gentoo ebuild from a DOAP file

安装

您可以使用distutils、easy_install或subversion安装doapfined。还有一个gentoo linux ebuild可用。

example命令行用法

为名为“nut”的sourceforge项目获取doap:

$ doapfiend --sf nut

您有一个项目的主页,如果有任何已被spidered,则显示doap:

$ doapfiend -o http://librdf.org/raptor/

您具有指向DOAP文件的URL或本地路径:

$ doapfiend -d http://librdf.org/raptor/raptor.rdf

将sourceforge项目“nut”的doap显示为rdf/xml:

$ doapfiend -x --sf nut

将sourceforge项目“nut”的doap显示为n3(符号3):

$ doapfiend -n --sf nut

示例库用法

使用freshmeat项目名称获取并显示doap:

>>> from doapfiend.doaplib import get_by_pkg_index

>>> print get_by_pkg_index('fm', 'nut')

获取一些doap并访问其元数据:

>>> from doapfiend.doaplib import get_by_pkg_index, load_graph
>>> doap = load_graph(get_by_pkg_index('fm', 'nut'))
>>> print doap.name
'nut'
>>> print doap.created
'2008-04-19'

使用项目的主页获取doap并打印rdf/xml。 注意,可能有不止一个doap配置文件;我们只使用在示例中找到的第一个。

>>> from doapfiend.doaplib import query_by_homepage, print_doap
>>> url = query_by_homepage('http://news.tiker.net/software/tagpy')[0][1]
>>> print fetch_doap(url)

同上,但在可读文本中显示DOAP:

>>> print_doap(fetch_doap(url))

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

推荐PyPI第三方库


热门话题
我们可以使用java for loop with switch语句。。?   java如何从具有循环关系的数据集生成树?   使用s:mvcUrl标记时java Spring启动问题   javascript Wicket调色板水平滚动条在firefox中不显示   java如何清理Maven插件绑定?   java将文件从设备发送到计算机不起作用(文件被破坏)   Java GPU编程的性能   java字符串标记器问题   连接Java LDAP断开连接   java Android GridView将无法确定正确的位置   java AlarmManager在指定时间未显示toast消息   MVC中的java测试外观|断言返回类型   logcat上的java Android运行时错误   java Building Workspace在Eclipse中遇到错误   堆栈溢出尾部递归遗传算法抛出“awteventque0”java。StackOverflowerr语言   java ArrayOutOfBounds测试代码不工作   java有没有像Moodle这样流行的课程管理系统?   java如何从jsp获取xml文件作为响应