首页 文章

无法让RDFlib在Windows上运行

提问于
浏览
2

我已经安装了RDFlib 3.0以及所需的一切,但是当我运行以下代码时出现错误 . 以下代码来自:http://code.google.com/p/rdflib/wiki/IntroSparql . 我已经尝试了几个小时来解决这个问题,但没有成功 . 可以请别人帮忙吗?

import rdflib
rdflib.plugin.register('sparql', rdflib.query.Processor,
                       'rdfextras.sparql.processor', 'Processor')
rdflib.plugin.register('sparql', rdflib.query.Result,
                       'rdfextras.sparql.query', 'SPARQLQueryResult')

from rdflib import ConjunctiveGraph
g = ConjunctiveGraph()
g.parse("http://bigasterisk.com/foaf.rdf")
g.parse("http://www.w3.org/People/Berners-Lee/card.rdf")

from rdflib import Namespace
FOAF = Namespace("http://xmlns.com/foaf/0.1/")
g.parse("http://danbri.livejournal.com/data/foaf")
[g.add((s, FOAF['name'], n)) for s,_,n in g.triples((None, FOAF['member_name'], None))]

for row in g.query(
        """SELECT ?aname ?bname
           WHERE {
              ?a foaf:knows ?b .
              ?a foaf:name ?aname .
              ?b foaf:name ?bname .
           }""",
        initNs=dict(foaf=Namespace("http://xmlns.com/foaf/0.1/"))):
    print "%s knows %s" % row

我得到的错误是:

Traceback (most recent call last):
  File "...", line 18 in <module>
    initNs=dict(foaf=Namespace("http://xmlns.com/foaf/0.1/"))):
TypeError: query() got an unexpected keyword argument 'initNS'

2 回答

  • 1

    与此同时,我找到了一个解决方法,即安装minGW32并使用它进行编译 . 因此,对于有类似问题的任何人:从sourceforge下载minGW32安装程序当您安装该工具并获得要询问要安装的组件的屏幕时,请选择“MinGW base tools”,“g compiler”和“MingW make” . 安装MinGW后,将C:\ MinGW \ bin添加到Path环境变量中

    来自http://code.google.com/p/rdflib/issues/detail?id=104#c4

  • 2

    好的,我终于找到了答案 . 你可以在这里阅读:http://blog.eddsn.com/2010/05/unable-to-find-vcvarsall-bat/

相关问题