码迷,mamicode.com
首页 > Web开发 > 详细

从一个网页上摘取想要的元素

时间:2017-06-03 14:01:27      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:操作   lin   line   https   adl   int   示例   new   str   

示例:从网页上摘取页面中的所有邮箱

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {
    public static void main(String[] args) throws Exception {
        // 1.1 创建一个url对象
        URL url = new URL(
                "https://www.douban.com/group/topic/41562980/?start=500");
        // 1.2打开链接
        URLConnection conn = url.openConnection();
        // 1.3 设置连接网络超时时间 单位为毫秒
        conn.setConnectTimeout(1000 * 10);
        // 1.4 通过流 操作读取指定网络地址中的文件
        BufferedReader bufr = new BufferedReader(new InputStreamReader(
                conn.getInputStream()));
        String line = null;
        // 1.5 匹配email的正则
        String regex = "[a-zA-Z0-9_-]+@\\w+\\.[a-z]+(\\.[a-z]+)?";
        // 1.6 使用模式的compile()方法生成模式对象
        Pattern p = Pattern.compile(regex);
        // 1.
        while ((line = bufr.readLine()) != null) {
            Matcher m = p.matcher(line);
            while (m.find()) {
                System.out.println(m.group());// 获得匹配的email
            }
        }
    }
}

 

从一个网页上摘取想要的元素

标签:操作   lin   line   https   adl   int   示例   new   str   

原文地址:http://www.cnblogs.com/alexanderthegreat/p/6936992.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!