1

我有从包含 RDF 数据的网站爬取 url 的爬虫。我试着像这样和耶拿一起得到它

Model model = ModelFactory.createDefaultModel();
model.read(url);
model.write(System.out);

urlString并且第一行被执行,调试器在第二行停止,然后它回到第一行(因为循环)。url是网页链接。我也尝试获取页面的 html 代码,然后将该字符串传递给read函数,但它也不起作用。

我真的是 RDF 和 Jena 的新手,而且我的 Java 经验并不是很丰富,所以任何帮助都是好的。

4

1 回答 1

1

您从 a 读取模型的代码url是正确的。例如,下面是一个完整的示例,它读取了 RDF/XML 规范的第 2.13 节类型化节点元素中的一个示例:

import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;

public class RetrieveRemoteRDF {
    public static void main(String[] args) {
        final String url = "http://www.w3.org/TR/REC-rdf-syntax/example14.nt";
        final Model model = ModelFactory.createDefaultModel();
        model.read(url);
        model.write(System.out);
    }
}

输出(在默认的 RDF/XML 序列化中)是:

<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:j.0="http://example.org/stuff/1.0/" > 
  <rdf:Description rdf:about="http://example.org/thing">
    <dc:title>A marvelous thing</dc:title>
    <rdf:type rdf:resource="http://example.org/stuff/1.0/Document"/>
  </rdf:Description>
</rdf:RDF>

url如果您遇到问题,似乎一定是由于model.read.

于 2013-08-15T13:03:50.837 回答