监控网页内容,发现需要的内容后弹框和声音提醒

帮朋友的忙写了个小应用,他需要每隔一段时间自动访问一个网页,如果发现特定的内容就弹框提醒和声音提醒,一条消息已经提醒过了就不用再次提醒了,只有遇到新的才提醒。
这是一个小功能,一会儿就搞完了,把里面的知识点简单梳理一下:
1.定时访问网页:
    (1)定时器jdk自带了,直接使用就行.
    (2)访问网页抓取内容可以使用httpclient,这是比较常用的框架.
 GetMethod getMethod = new GetMethod(newUrl);
     int statusCode = httpClient.executeMethod(getMethod);
     byte[] responseBody = getMethod.getResponseBody();

2.解析网页,查找是否包含所需要内容
InputStream inputStream = new ByteArrayInputStream(bytes);
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
for (String line = reader.readLine(); line != null; line = reader.readLine()) {
//比较判断逻辑....
}

3.弹框提醒
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Toolkit;

import javax.swing.JLabel;
import javax.swing.WindowConstants;

public class DialogMessage extends javax.swing.JFrame {
    private JLabel text;
    Toolkit tk = Toolkit.getDefaultToolkit();
    Dimension screenSize = tk.getScreenSize();
    int height = screenSize.height;
    int width = screenSize.width;
    private String str = null;

    public DialogMessage(String str) {
        this.str = str;
        new Thread(new Runnable() {
            @Override
            public void run() {
                initGUI();
            }
        }).start();
    }

    private void initGUI() {
        try {
            setUndecorated(true);
            setLocationRelativeTo(null);
            setVisible(true);
            setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
            {
                text = new JLabel("<html>" + str + "</html>", JLabel.CENTER);
                getContentPane().add(text, BorderLayout.CENTER);
                text.setBackground(new java.awt.Color(255, 251, 240));
            }
            pack();
            setBounds(width - 380, height - 150, 360, 100);
            try {
                Thread.sleep(9000);
            } catch (InterruptedException e1) {
                e1.printStackTrace();
            }
            dispose();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}


4.声音提醒
//Toolkit.getDefaultToolkit().beep();//系统默认提示音
Clip clip = AudioSystem.getClip();//调用外部文件定义的声音
AudioInputStream inputStream = AudioSystem.getAudioInputStream(SoundMessage.class.getResourceAsStream(url));
clip.open(inputStream);
clip.start();


最后,附上完整代码下载地址:http://download.csdn.net/detail/lk_blog/9150901
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值