【发布时间】:2015-03-16 11:37:25
【问题描述】:
在维基百科中,95% 的链接指向哲学页面。我正在尝试用 Java 编写一个程序,该程序采用维基百科上的任何链接并单击第一个链接(不是引用/声音/外部链接,也忽略了 parentitzed 链接。)
例如,如果您从这个 url http://en.wikipedia.org/wiki/Dutch_people 开始,它应该点击 Ethnic Group http://en.wikipedia.org/wiki/Ethnic_group 等等,直到它到达哲学
你应该看到这个Getting_to_Philosophy 检查http://xefer.com/wikipedia(输入任何单词)看看它是如何工作的。
我已经编写了将数据库中的数据存储在 3 列中的后端
Unique_URL_Id URL_Link Next_URL_Id 所以后面打印整个路径会更容易。
后端工作正常(如果我只给它一个要遵循的链接列表)。但是,提取和查找第一个链接并不能正常工作。
这是我为使用 jSoap API 从 URL 中提取而编写的示例代码
public static void extractWikiPage(String title) throws IOException{
Document doc = Jsoup.connect("http://en.wikipedia.org/wiki/Europe").get();
//int titles = doc.toString().indexOf("(");
//Get the first paragraph where the main body contents starts
String body = doc.getElementsByTag("p").first().toString();
System.out.println(body);
Document doc2= Jsoup.parse(body);
Elements href=doc2.getElementsByTag("a");
int x="".indexOf("");
for(Element h: href){
System.out.println(h.toString());
}
//System.out.println(linkText);
System.exit(1);
}
我只是发现'<p>' 的第一次出现,因为这是 95% 到下一页的链接开始的地方。在该段中,我正在尝试获取所有链接,但我需要第一个满足我上面写的条件的链接。
如何使用 Wikipedia API 来解决提取我正在寻找的数据的问题。感谢您的帮助。
【问题讨论】:
标签: java mediawiki wikipedia wikipedia-api mediawiki-api