网页爬虫:其实就一个程序用于在互联网中获取符合指定规则的数据 爬取邮箱地址,爬取的源不同,本地爬取或者是网络爬取
(1)爬取本地数据:
public static List<String> getMails() throws IOException { // 1.读取源文件 // 爬取本地文件 BufferedReader bufr = new BufferedReader(new FileReader("D:\mail.txt")); // 2.对读取的数据进行规则的匹配,从中获取符合规则的数据 String mail_regex = "\w+@\w+(\.\w+)+"; List<String> list = new ArrayList<String>(); Pattern p = Pattern.compile(mail_regex); String line = null; while ((line = bufr.readLine()) != null) { Matcher m = p.matcher(line); while (m.find()) { // 3.将符合规则的数据存储到集合中 list.add(m.group()); } } return list; }
运行结果:
emdm@cnw.cjn cwec@cwc.cwk.cwe 163@com.cn shuwei_yao@163.com.cn
(2)爬取网络数据
1 public static List<String> getWebMails() throws IOException { 2 // 1.读取源文件 3 URL url = new URL("http://sina.com.cn"); 4 BufferedReader bufIn = new BufferedReader(new InputStreamReader( 5 url.openStream())); 6 // 2.对读取的数据进行规则的匹配,从中获取符合规则的数据 7 String mail_regex = "\w+@\w+(\.\w+)+"; 8 List<String> list = new ArrayList<String>(); 9 Pattern p = Pattern.compile(mail_regex); 10 String line = null; 11 while ((line = bufIn.readLine()) != null) { 12 Matcher m = p.matcher(line); 13 while (m.find()) { 14 // 3.将符合规则的数据存储到集合中 15 list.add(m.group()); 16 } 17 } 18 return list; 19 }
运行结果:
jubao@vip.sina.com jubao@vip.sina.com
本文为博主原创文章,转载请注明出处:http://www.cnblogs.com/ysw-go/
1、本博客的原创原创文章,都是本人平时学习所做的笔记,如有错误,欢迎指正。
2、如有侵犯您的知识产权和版权问题,请通知本人,本人会即时做出处理文章。
3、本博客的目的是知识交流所用,转载自其它博客或网站,作为自己的参考资料的,感谢这些文章的原创人员