我对这个网络抓取非常新.我正在使用crawler4j来抓取网站.我通过抓取这些网站收集所需的信息.我的问题是我无法抓取以下网站的内容.http://www.sciencedirect.com/science/article/pii/S1568494612005741.我想从上述网站抓取以下信息(请查看附带的屏幕截图).

如果您观察到附加的屏幕截图,则它有三个名称(在红色框中突出显示).如果单击其中一个链接,您将看到一个弹出窗口,该弹出窗口包含有关该作者的全部信息.我想抓取该弹出窗口中的信息.
我使用以下代码来抓取内容.
public class WebContentDownloader {
private Parser parser;
private PageFetcher pageFetcher;
public WebContentDownloader() {
CrawlConfig config = new CrawlConfig();
parser = new Parser(config);
pageFetcher = new PageFetcher(config);
}
private Page download(String url) {
WebURL curURL = new WebURL();
curURL.setURL(url);
PageFetchResult fetchResult = null;
try {
fetchResult = pageFetcher.fetchHeader(curURL);
if (fetchResult.getStatusCode() == HttpStatus.SC_OK) {
try {
Page page = new Page(curURL);
fetchResult.fetchContent(page);
if (parser.parse(page, curURL.getURL())) {
return page;
}
} catch (Exception e) {
e.printStackTrace(); …Run Code Online (Sandbox Code Playgroud) 我是MongoDB的新手.我正在尝试通过Java Driver在MongoDB中为数据库创建用户.我使用的是mongo-java-driver 3.0.1版本.我在谷歌搜索,我没有找到相关的答案.我看到mongo-java-driver 2.13.0中有直接方法,但在最新版本中已弃用.我尝试使用以下代码来创建用户,但我得到了异常.
码:
MongoClient mongoClient = new MongoClient("127.0.0.1","27017");
MongoDatabase mongoDatabase = this.mongoClient
.getDatabase(doc);
BasicDBObject commandArguments = new BasicDBObject();
commandArguments.put("user", mongoDatabase.getName());
commandArguments.put("pwd", "Cip#erCloud@123");
String[] roles = { "readWrite" };
commandArguments.put("roles", roles);
BasicDBObject command = new BasicDBObject("createUser",
commandArguments.toString());
mongoDatabase.runCommand(command);
Run Code Online (Sandbox Code Playgroud)
例外:
com.mongodb.MongoCommandException: Command failed with error 2: 'Must provide a 'pwd' field for all user documents, except those with '$external' as the user's source db' on server 127.0.0.1:27017.
The full response is { "ok" : 0.0, "errmsg" …Run Code Online (Sandbox Code Playgroud) 我对HBase开发非常陌生。我正在跟踪链接。我正在使用Hbase-1.1.2版本。使用示例代码时,我会收到警告。不推荐使用几种方法(例如,新的HBaseAdmin(conf);)。我看到HBaseAdmin类具有3个构造函数。在3个构造函数中,有2个已弃用。只有一个接受“ ClusterConnection”作为参数的构造函数。我不知道我是否遵循正确的链接来使用HBase。可以使用最新的hbase库提供示例示例吗?我将HBase作为独立模式运行。
我对 DBPedia 很陌生,我不知道如何以及从哪里开始。我对此做了一些研究,从中我了解到我们可以使用 SPARQL 查询语言(Apache Jena)访问数据。所以我开始下载Ontology Infobox Properties的 .ttl 文件。之后,我提取了这个文件,它几乎有 2GB。我的问题由此开始 没有一个编辑器无法打开这个文件。我访问此文件的示例程序在这里...
public class OntologyExample {
public static void main(String[] args) {
FileManager.get().addLocatorClassLoader(
OntologyExample.class.getClassLoader());
Model model = FileManager
.get()
.loadModel("D:\\Dell XPS\\DBPEDIA\\instance_types_en.ttl\\instance_types_en.ttl");
String q = "SELECT * WHERE { "
+ "?e <http://dbpedia.org/ontology/series> <http://dbpedia.org/resource/The_Sopranos> ."
+ "?e <http://dbpedia.org/ontology/releaseDate> ?date"
+ "?e <http://dbpedia.org/ontology/episodeNumber> ?number "
+ "?e <http://dbpedia.org/ontology/seasonNumber> ?season"
+ " }" + "ORDER BY DESC(?date)";
Query query = QueryFactory.create(q);
QueryExecution queryExecution = QueryExecutionFactory.create(query,
model);
ResultSet resultSet = queryExecution.execSelect();
ResultSetFormatter.out(System.out, …Run Code Online (Sandbox Code Playgroud) 我对这个语义网很新,我正在用Sparql和DBPEDIA做一些实验.我编写了一个查询来查找具有firstName(givenName)和lastName(surName)的所有记录.
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
select count(DISTINCT ?x) where {
?x foaf:givenName ?y;
foaf:surname ?z.
}
Run Code Online (Sandbox Code Playgroud)
当我运行此查询时,我得到了9,80,000条记录.但是当我运行单个查询(对于firstName和lastName)时,我获得了firstName的9,92,000条记录和lastName的9,80,000条记录.
在这里我的问题是如何获得只有firstName但不是lastName的资源...... ???
我想要使用SPARQL查询检索空白节点.我使用DBpedia作为我的数据集.例如,当我使用以下查询时,我得到了大约340万个结果.
PREFIX prop:<http://dbpedia.org/property/>
select count(?x) where {
?x prop:name ?y
}
Run Code Online (Sandbox Code Playgroud)
当我使用DISTINCT解决方案修饰符时,我得到大约220万个结果.
PREFIX prop:<http://dbpedia.org/property/>
select count(DISTINCT ?x) where {
?x prop:name ?y
}
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
dbpedia ×3
java ×3
sparql ×3
blank-nodes ×1
crawler4j ×1
hadoop ×1
hbase ×1
jena ×1
mongodb ×1
rdf ×1
semantic-web ×1
web-crawler ×1