import java.net.*; import java.io.*; import sun.net.www.*; import sun.net.www.http.*; import sun.net.*; // not thread safe public class PageGrabber { MessageHeader request; MessageHeader response; public static void main(String[] args) { PageGrabber pg = new PageGrabber(); for (int i = 0; i < args.length; i++) { try { URL u = new URL(args[i]); pg.getPage(u); } catch (MalformedURLException e) { System.err.println("Usage: java GrabPage URL1 URL2 ..."); } } } public PageGrabber() { request = new MessageHeader(); response = new MessageHeader(); request.add("User-Agent", "PageGrabber 1.0"); request.add("Accept", "text/html, text/plain, text/*"); } public void getPage(URL u) { try { HttpClient hc = new HttpClient(u, null, -1); request.prepend("GET " + hc.getURLFile() + " " + "HTTP/1.0", null); hc.writeRequests(request); hc.parseHTTP(response, new ProgressEntry(u.getFile(), null)); InputStreamReader isr = new InputStreamReader(hc.getInputStream()); BufferedReader br = new BufferedReader(isr); try { while (true) { if (br.ready()) { String theLine = br.readLine(); if (theLine == null) break; System.out.println(theLine); } } } catch(NullPointerException e) { System.err.println(e); e.printStackTrace(); } HttpClient.finished(hc); } catch (IOException e) { System.err.println(e); } } }