当前位置: 首页 > 教程 > Java Swing >

实战-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();  
    }  
}  

输出结果为: