zoukankan      html  css  js  c++  java
  • 正则表达式:网页爬虫

    这是对正则表达式的一个小应用,爬取指定网页的指定内容。这里用的是一个博客网页,抓取邮箱到集合里。

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.URL;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    public class RegexDemo2 {
    
        /**
         * @param args
         * @throws IOException
         */
    
        /*
         * 网页爬虫:其实就一个程序用于在互联网中获取符合指定规则的数据。 爬取邮箱地址。
         */
        public static void main(String[] args) throws IOException {
            List<String> list = getMailsByWeb();
            for (String mail : list) {
                System.out.println(mail);
            }
        }
    
        public static List<String> getMailsByWeb() throws IOException {
    
            URL url = new URL("http://blog.sina.com.cn/s/blog_515617e60101e151.html");
            BufferedReader bufIn = new BufferedReader(new InputStreamReader(
                    url.openStream()));
            // 对读取的数据进行规则的匹配。从中获取符合规则的数据.
            String mail_regex = "\w+@\w+(\.\w+)+";
    
            List<String> list = new ArrayList<String>();
            Pattern p = Pattern.compile(mail_regex);
    
            String line = null;
    
            while ((line = bufIn.readLine()) != null) {
    
                Matcher m = p.matcher(line);
                while (m.find()) {
                    // 3,将符合规则的数据存储到集合中。
                    list.add(m.group());
                }
    
            }
    
            return list;
        }
    
    }
  • 相关阅读:
    ASP.NET中备份恢复数据库
    SQL Server连接失败错误小结
    GSL科学计算库的使用
    [转]VC编程中经常能遇到LNK2005错误
    主函数main中变量(int argc,char *argv[])的含义
    毕业了,工作了
    何为COM组件技术
    一个老外总结的WP开发资源
    跟我一起写Makefile
    qsort() 之 __cdecl
  • 原文地址:https://www.cnblogs.com/stonewu/p/3692994.html
Copyright © 2011-2022 走看看