JAVA語言用正則表達式抓取網頁中的email

    和我的上一篇博客一樣,這個也是看了馬士兵老師關於正則表達式的視頻之後做的練習。下面直接上代碼。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {
    public static void main(String[] args){
    	try {
    		try {
				URL url = new URL("http://www.xxxxx.com/abc/");//這裏可以自己找一個有很多郵箱的頁面。
				try {
					InputStream is = url.openStream();
					InputStreamReader isr = new InputStreamReader(is);
					BufferedReader br = new BufferedReader(isr);
					Pattern p = Pattern.compile("[\\w.-]+@[\\w.-]+\\.\\w+");
					String line = "";
					try {
						while((line = br.readLine()) != null){
							Matcher m = p.matcher(line);
							if(m.find()){
								System.out.println(m.group());
							}
						}
					} catch (IOException e) {
						e.printStackTrace();
					}
				} catch (IOException e) {
					e.printStackTrace();
				}
			} catch (MalformedURLException e1) {
				e1.printStackTrace();
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
    }
}

     同樣的,代碼寫得比較粗糙,但是實現了主要功能。大家如果有興趣的話,可以做一些擴展,比如把要採集的頁面URL寫到配置文件中,再寫個定時器自動採集email並存到數據庫中,可以再寫個定時器自動取出當天新採集的email併發送郵件。

    希望可以共同交流。

發佈了31 篇原創文章 · 獲贊 1 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章