시소당
// GET 방식으로 사용자 쿼리 전달
import java.io.*;
import java.net.*;
public class DaumSearch{
public static void main(String[] args){
if(args.length != 2){
System.out.println("사용법: java DaumSearch keyboard filename");
System.exit(1);
}
try{
String keyboard = URLEncoder.encode(args[0], "UTF-8"); //수정하지 않아도 별 문제 없음
// http://search.daum.net/cgi-bin/nsp/search.cgi?nil_profile=g&nil_search=btn&w=tot&q=
String query = "nil_profile=g&nil_search=btn&w=tot&q=" + keyboard;
String u = "http://search.daum.net/cgi-bin/nsp/search.cgi?";
System.out.println(u + query);
URL url = new URL(u + query); //url에 쿼리 포함
URLConnection urlcon = url.openConnection();
HttpURLConnection hurlc = (HttpURLConnection)urlcon;
//굳이 쓰지 않아도 되는 부분 또는 불필요한 부분
/* hurlc.setRequestMethod("GET");
hurlc.setDoOutput(true); // URL 주소의 웹 애플리케이션에게 사용자 쿼리를 전달하는 것
hurlc.setDoInput(true); // URL 주소의 내용을 읽어들이는 것.
hurlc.setUseCaches(false);
hurlc.setDefaultUseCaches(false);
PrintWriter out = new PrintWriter(hurlc.getOutputStream());
out.println(query); // 쿼리를 웹 애플리케이션에 전달.
out.close(); */
BufferedReader br = new BufferedReader(new InputStreamReader(hurlc.getInputStream()));
PrintWriter pw = new PrintWriter(new FileWriter(args[1]));
String inputLine = null;
while((inputLine = br.readLine()) != null){
pw.write(inputLine);
}//while
br.close();
pw.close();
System.out.println("검색된 결과가 " + args[1] + "에 저장되었습니다.");
}catch(Exception ex){
System.out.println(ex);
}
}//main
}