import java.io.IOException; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; /** * * 解析百度网址的代码,获得链接 */ public class testbaidu { public static void main(String[] args) throws IOException { //Validate.isTrue(args.length == 1, "usage: supply url to fetch"); String url = "http://www.baidu.com"; //String url2="http://epub.cnki.net/kns/brief/brief.aspx?pagename=ASP.brief_default_result_aspx&dbPrefix=SCDB"; Document doc = Jsoup.connect(url).get(); Elements links = doc.select("a[href]"); // Elements media = doc.select("[src]"); // Elements imports = doc.select("link[href]"); /* print("\nMedia: (%d)", media.size()); for (Element src : media) { if (src.tagName().equals("img")) print(" * %s: <%s> %sx%s (%s)", src.tagName(), src.attr("abs:src"), src.attr("width"), src.attr("height"), trim(src.attr("alt"), 20)); else print(" * %s: <%s>", src.tagName(), src.attr("abs:src")); } print("\nImports: (%d)", imports.size()); for (Element link : imports) { print(" * %s <%s> (%s)", link.tagName(),link.attr("abs:href"), link.attr("rel")); }*/ print("\nLinks: (%d)", links.size()); for (Element link : links) { //if (link.attr("abs:href").contains("")) { print(" * a: <%s> (%s)", link.attr("abs:href"), trim(link.text(), 35)); //} } /* for (Element link : links2) { if (link.attr("abs:div").contains("400")) { print(" * b: (%s)", trim(link.text(), 100)); } }*/ } private static void print(String msg, Object... args) { System.out.println(String.format(msg, args)); } private static String trim(String s, int width) { if (s.length() > width) return s.substring(0, width-1) + "."; else return s; } }