首页 > 学院 > 开发设计 > 正文

如何在网页中提取Email地址

2019-11-14 22:24:21
字体:
来源:转载
供稿:网友
如何在网页中提取Email地址

开博好久了,今天第一次发表技术文档,之前总是将一些好的事例保存在电脑,时间久了找起来也很麻烦,所以还是放在博客里进行归类比较方便,这样也能将自己在学习过程中的一些心得体会分享给大家,也能给需要的人一点帮助。

一个朋友需要我帮忙给写一个能够提取网页中Email地址的小程序,所以就用java语言帮他做了一个,有不完善的地方还请大家谅解,并提出来,一起学习。

源代码详见附件!加压后将将readme.htm放在F://share//readme.htm,也可自定义目录,自定义目录需要修改对应的代码文件路径。源代码.rar

import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.util.regex.Matcher;import java.util.regex.Pattern;/*** email小爬虫* @author xiaoxin* @date 2014/10/29*/public class EmailSpider {    public static void main(String[] args) {        try {            BufferedReader br = new BufferedReader(new FileReader("F://share//readme.htm"));            BufferedWriter bw = new BufferedWriter(new FileWriter("F://share//email.txt"));            String line = "";            while((line = br.readLine()) != null) {                parse(line, bw);            }            bw.flush();            bw.close();            br.close();        } catch (FileNotFoundException e) {            e.PRintStackTrace();        } catch (IOException e) {            e.printStackTrace();        }    }    /**     * 解析Email的方法     * @param line 按行过滤     * @param bw 输出到email.txt    */    private static void parse(String line, BufferedWriter bw) {        Pattern p = Pattern.compile("[//w[.-]]+@[//w[.-]]+//.[//w]+");        Matcher m = p.matcher(line);        try {            while(m.find()) {                bw.write(m.group() + ";/r/n"); //换行显示,适用于windows、linux下为/r、Mac下为/n         //     bw.newLine();//建议用这个换行                System.out.println(m.group());            }        } catch (IOException e) {            e.printStackTrace();            System.exit(-1);        }    }}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表