📄 simplesitemapgen.java
字号:
/** A very simple example program using Arachnid framework */
import java.io.*;
import java.net.*;
import java.util.*;
import bplatt.spider.*;
public class SimpleSiteMapGen {
private String site;
private final static String header = "<html><head><title>Site Map</title></head><body><ul>";
private final static String trailer = "</ul></body></html>";
public static void main(String[] args) {
if (args.length != 1) {
System.err.println("java SimpleSiteMapGen <url>");
System.exit(-1);
}
SimpleSiteMapGen s = new SimpleSiteMapGen(args[0]);
s.generate();
}
public SimpleSiteMapGen(String site) {
this.site = site;
}
public void generate() {
MySpider spider = null;
try { spider = new MySpider(site); }
catch(MalformedURLException e) {
System.err.println(e);
System.err.println("Invalid URL: "+site);
return;
}
System.out.println(header);
spider.traverse();
System.out.println(trailer);
}
}
class MySpider extends Arachnid {
public MySpider(String base) throws MalformedURLException
{ super(base); }
protected void handleLink(PageInfo p) {
String link = p.getUrl().toString();
String title = p.getTitle();
if (link == null || title == null || link.length() == 0 || title.length() ==0) return;
else System.out.println("<li><a href=\""+link+"\">"+title+"</a></li>");
}
protected void handleBadLink(URL url,URL parent, PageInfo p) { }
protected void handleBadIO(URL url, URL parent) { }
protected void handleNonHTMLlink(URL url, URL parent,PageInfo p) { }
protected void handleExternalLink(URL url, URL parent) { }
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -