首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Dmoz ODP文件中仅提取URL(RDF格式)

如何从Dmoz ODP文件中仅提取URL(RDF格式)
EN

Stack Overflow用户
提问于 2011-11-01 04:48:56
回答 3查看 1.5K关注 0票数 0

我只需要dmoz/ODP文件中的URL。但是这个文件是RDF格式的。如何从odp文件中只获取url?我想把所有的网址提取到一个文本文件中。

有人知道有什么脚本可以只解析rdf文件中的urls吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-01 06:46:36

那就像这样吧?

代码语言:javascript
复制
#!/usr/bin/perl
use strict;
use warnings;

my $file = "kt-content.rdf.u8";
my @urls;

open(my $fh, "<", $file) or die "Unable to open $file\n";

while (my $line = <$fh>) {
    if ($line =~ m/<(?:ExternalPage about|link r:resource)="([^\"]+)"\/?>/) {
        push @urls, $1;
    }
}

close $fh;

然后将@urls的内容打印到文本文件。

票数 1
EN

Stack Overflow用户

发布于 2011-11-01 11:52:07

几个流行的RDF (Jena、Sesame和dotNetRDF)都为SemWeb文件提供了完全流式的API,因此您可以编写一个自定义数据处理程序,该处理程序只接受生成的URI,并丢弃您不感兴趣的其余内容。

您可以使用perl做一些复杂的事情,它可能会更快,但它可能并不完全准确,特别是当RDF使用需要解决的相对URI时。

票数 2
EN

Stack Overflow用户

发布于 2013-06-19 18:00:07

选项1.从http://sourceforge.net/projects/dmoz2mysql/files/latest/download下载dmoz_v3.zip。这是一个PHP脚本,用于自动解析DMOZ RDF数据转储文件。它的特点是下载文件,提取,清理,解析并将数据插入到MySQL数据库中。

选项2.使用以下链接查找从RDF转储文件中提取URL的工具

http://www.dmoz.org/Computers/Internet/Searching/Directories/Open_Directory_Project/Use_of_ODP_Data/Upload_Tools/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7959552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档