我正在使用由jsoup组成的抓取工具捕获网站内容。
我可以获取某个页面的父页面吗?
我在谈论网站的层次结构。
见图片: Website Hierarchical Structure
例如,"关于公司"的父母是"主页"。虽然" Mission"的父母是"关于公司"。
如果你问我是如何获得链接的,我会使用以下代码:
蜘蛛类
public void search(String url)
{
while(this.pagesVisited.size() < MAX_PAGES_TO_SEARCH)
{
String currentUrl = "";
SpiderLeg leg = new SpiderLeg();
if(this.pagesToVisit.isEmpty())
{
currentUrl = url;
parent = url;
this.pagesVisited.add(url);
}
else
{
currentUrl = this.nextUrl();
}
System.out.println("Current URL: " + currentUrl);
leg.crawl(currentUrl, parent, pagesVisited);
this.pagesToVisit.addAll(leg.getLinks());
System.out.println("Pages to Visit: " + pagesToVisit.size());
}
System.out.println("\n**Done** Visited " + this.pagesVisited.size() + " web page(s)");
}
private String nextUrl()
{
String nextUrl;
do
{
nextUrl = this.pagesToVisit.remove(0);
} while(this.pagesVisited.contains(nextUrl));
this.pagesVisited.add(nextUrl);
return nextUrl;
}
蜘蛛腿类
public List<String> getLinks()
{
return this.links;
}
这些代码源自此说明: 'Net Instructions — How to make a simple web crawler in Java