2012-02-14 1 views
1

Пример программы: список ссылокПример программного аргумента

Эта примерная программа демонстрирует, как извлекать страницу из URL-адреса; извлекать ссылки, изображения и другие указатели; и изучить их URL-адреса и текст.

Укажите URL-адрес для выбора в качестве единственного аргумента программы.

package org.jsoup.examples; 

import org.jsoup.Jsoup; 
import org.jsoup.helper.Validate; 
import org.jsoup.nodes.Document; 
import org.jsoup.nodes.Element; 
import org.jsoup.select.Elements; 

import java.io.IOException; 

public class ListLinks { 
    public static void main(String[] args) throws IOException { 
     Validate.isTrue(args.length == 1, "usage: supply url to fetch"); 
     String url = args[0]; 
     print("Fetching %s...", url); 

     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) { 
      print(" * a: <%s> (%s)", link.attr("abs:href"), trim(link.text(), 35)); 
     } 
    } 

    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; 
    } 
} 

Как указать единственный аргумент программы? Я новичок, поэтому не подшучивай. :)

+0

Вы спрашиваете, как передать значения String [] аргу на недействительном основном? – JohnFx

ответ

4

Это Java, поэтому при ее запуске просто передайте URL как аргумент. Например:

java -jar MyJar.jar http://google.com/ 

В случае, если вы не упакованный его в баночку, то это еще проще:

java MyClass http://google.com/