实战-Swing实现简单爬虫
精华
小牛编辑
169浏览
2023-03-14
1 Swing实现简单爬虫
我们可以借助网络,带有事件处理的Swing开发Java中的URL源代码生成器。让我们看一下用Java创建URL源代码生成器的代码。
核心代码:
URL u=new URL("https://www.xnip.cn");//change the URL
URLConnection uc=u.openConnection();
InputStream is=uc.getInputStream();
int i;
StringBuilder sb=new StringBuilder();
while((i=is.read())!=-1){
sb.append((char)i);
}
String source=sb.toString();
让我们看一下生成URL源代码的代码。
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
import java.awt.*;
import java.awt.event.*;
import java.io.InputStream;
import java.net.*;
public class SourceGetter extends Frame implements ActionListener{
TextField tf;
TextArea ta;
Button b;
Label l;
SourceGetter(){
super("简单爬虫 - 小牛知识库网");
l=new Label("Enter URL:");
l.setBounds(50,50,50,20);
tf=new TextField();
tf.setBounds(120,50,250,20);
b=new Button("Get Source Code");
b.setBounds(120, 100,120,30);
b.addActionListener(this);
ta=new TextArea();
ta.setBounds(120,150,400,500);
add(l);add(tf);add(b);add(ta);
setSize(400,400);
setLayout(null);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
String s=tf.getText();
if(s==null){}
else{
try{
URL u=new URL(s);
URLConnection uc=u.openConnection();
InputStream is=uc.getInputStream();
int i;
StringBuilder sb=new StringBuilder();
while((i=is.read())!=-1){
sb.append((char)i);
}
String source=sb.toString();
ta.setText(source);
}catch(Exception ex){System.out.println(e);}
}
}
public static void main(String[] args) {
new SourceGetter();
}
}
输出结果为: