?? webparamcrawler.java
字號:
package chapter2;
import java.io.*;
import java.net.*;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
public class WebParamCrawler {
private static String Text_File_Path = "D:\\workshop\\ch2\\htmlsrc.html";
private static String urllist_File_Path = "D:\\workshop\\ch2\\urllist.txt";
public static void main(String[] args) throws IOException {
try {
String s;
String dnsname;
//char[] cBuffer = new char[8096*2];
File file = new File(Text_File_Path);
FileWriter fpWriter = new FileWriter(file);
BufferedReader brList = new BufferedReader(new FileReader(urllist_File_Path));
while ((s = brList.readLine()) != null) { //判斷是否讀到了最后一行
System.out.println(s);
//dnsname = s.substring( s.indexOf(ch, fromIndex))
// 生成下載對象
Socket webclient = new Socket("www.bnu.edu.cn", 80);
PrintWriter result = new PrintWriter(webclient.getOutputStream(), true);
BufferedReader receiver = new BufferedReader(new InputStreamReader(webclient.getInputStream()));
//發(fā)送HTTP request請求
result.println("GET / HTTP/1.1");
result.println("Host: bnu.edu.cn");
result.println("Connection: Close");
result.println();
//接收HTTP Response 返回的結(jié)果信息
boolean bRet = true;
StringBuffer sBuffer = new StringBuffer(8096);
while (bRet) {
if (receiver.ready()) {
int idx = 0;
while (idx != -1) {
idx = receiver.read();
if(idx == '<')
break;
}
while (idx != -1) {
sBuffer.append((char) idx);
idx = receiver.read();
}
bRet = false;
}
}
// 顯示獲得的網(wǎng)頁正文,打印到控制臺
System.out.println(sBuffer.toString());
fpWriter.write(sBuffer.toString());
webclient.close();
}
brList.close();
fpWriter.close();
} catch (UnknownHostException e) {
System.err.println("無法訪問指定主機.");
//System.exit(1);
} catch (IOException e) {
System.err.println("下載失敗,請檢查輸入地址是否正確。");
//System.exit(1);
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -