zoukankan      html  css  js  c++  java
  • java代码抓取网页邮箱

    实现思路:
    1、使用java.net.URL对象,绑定网络上某一个网页的地址
    2、通过java.net.URL对象的openConnection()方法获得一个HttpConnection对象
    3、通过HttpConnection对象的getInputStream()方法获得该网络文件的输入流对象InputStream
    4、循环读取流中的每一行数据,并由Pattern对象编译的正则表达式区配每一行字符,取得email地址

    package cn.sdhzzl;

    import java.io.BufferedReader;
    import java.io.IOException;
    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 IOException {
    //1.1 创建一个url对象
    URL url = new URL("https://www.douban.com/group/topic/8845032/");
    //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
    }
    }
    }
    }

  • 相关阅读:
    mysql-主主配置
    PHP安装-centos7
    mysql-M-S-S模型 中继器 级联
    安装mysql数据库-centos7
    正则表达式
    DJango安装-windows
    flask安装
    python安装centos7
    Linux——C库
    文件I/O
  • 原文地址:https://www.cnblogs.com/cnsdhzzl/p/5532126.html
Copyright © 2011-2022 走看看