欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java代碼抓取網(wǎng)頁郵箱的實(shí)現(xiàn)方法

 更新時(shí)間:2016年06月01日 09:23:09   投稿:jingxian  
下面小編就為大家?guī)硪黄猨ava代碼抓取網(wǎng)頁郵箱的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

實(shí)現(xiàn)思路:

1、使用java.net.URL對象,綁定網(wǎng)絡(luò)上某一個(gè)網(wǎng)頁的地址

2、通過java.net.URL對象的openConnection()方法獲得一個(gè)HttpConnection對象

3、通過HttpConnection對象的getInputStream()方法獲得該網(wǎng)絡(luò)文件的輸入流對象InputStream

4、循環(huán)讀取流中的每一行數(shù)據(jù),并由Pattern對象編譯的正則表達(dá)式區(qū)配每一行字符,取得email地址

package cn.sdhzzl;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
//和網(wǎng)絡(luò)相關(guān)的操作
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 創(chuàng)建一個(gè)url對象
URL url = new URL("http://www.dbjr.com.cn/group/topic/8845032/"); 
//1.2 打開連接 
URLConnection conn = url.openConnection(); 
//1.3 設(shè)置連接網(wǎng)絡(luò)超時(shí)時(shí)間 單位為毫秒
conn.setConnectTimeout(1000 * 10); 
//1.4 通過流 操作讀取指定網(wǎng)絡(luò)地址中的文件 
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 
} 
} 
}
}

以上這篇java代碼抓取網(wǎng)頁郵箱的實(shí)現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java基礎(chǔ)篇之對象數(shù)組練習(xí)

    Java基礎(chǔ)篇之對象數(shù)組練習(xí)

    對象數(shù)組就是數(shù)組里的每個(gè)元素都是類的對象,賦值時(shí)先定義對象,然后將對象直接賦給數(shù)組就行了,這篇文章主要給大家介紹了關(guān)于Java基礎(chǔ)篇之對象數(shù)組練習(xí)的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • spring boot linux啟動(dòng)方式詳解

    spring boot linux啟動(dòng)方式詳解

    這篇文章主要介紹了spring boot linux啟動(dòng)方式詳解,分為為前臺(tái)啟動(dòng),后臺(tái)啟動(dòng)和腳本啟動(dòng)的各種方式講解,需要的朋友可以參考下
    2017-11-11
  • Spring @Async 的使用與實(shí)現(xiàn)的示例代碼

    Spring @Async 的使用與實(shí)現(xiàn)的示例代碼

    本篇文章主要介紹了Spring @Async 的使用與實(shí)現(xiàn)的示例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • 利用Java手寫一個(gè)簡易的lombok的示例代碼

    利用Java手寫一個(gè)簡易的lombok的示例代碼

    Lombok是一款Java開發(fā)插件,使得Java開發(fā)者可以通過其定義的一系列注解來消除業(yè)務(wù)工程中冗長和繁瑣的代碼,尤其對于簡單的Java模型對象。本文就來手寫一個(gè)簡易的lombok,需要的可以參考一下
    2022-10-10
  • Mybatis各種查詢接口使用詳解

    Mybatis各種查詢接口使用詳解

    這篇文章主要介紹了Mybatis各種查詢接口使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-11-11
  • java基于servlet實(shí)現(xiàn)文件上傳功能解析

    java基于servlet實(shí)現(xiàn)文件上傳功能解析

    這篇文章主要為大家詳細(xì)介紹了java基于servlet實(shí)現(xiàn)上傳功能,后臺(tái)使用java實(shí)現(xiàn),前端主要是js的ajax實(shí)現(xiàn),感興趣的小伙伴們可以參考一下
    2016-05-05
  • RocketMQ 延時(shí)級(jí)別配置方式

    RocketMQ 延時(shí)級(jí)別配置方式

    這篇文章主要介紹了RocketMQ 延時(shí)級(jí)別配置方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java8中的LocalDateTime你會(huì)使用了嗎

    Java8中的LocalDateTime你會(huì)使用了嗎

    LocalDateTime?是?Java?8?中日期時(shí)間?API?提供的一個(gè)類,在日期和時(shí)間的表示上提供了更加豐富和靈活的支持,本文就來講講LocalDateTime的一些具體使用方法吧
    2023-05-05
  • 關(guān)閉支付寶小額免密支付步驟詳解

    關(guān)閉支付寶小額免密支付步驟詳解

    支付寶現(xiàn)在作為我們?nèi)粘I钪凶畛S玫膽?yīng)用之一,已經(jīng)成為了人們的虛擬錢包。但是最近,有人發(fā)現(xiàn)了支付寶的一個(gè)漏洞,本文將對如何關(guān)閉小額免密支付進(jìn)行步驟介紹。下面跟著小編一起來看下吧
    2017-01-01
  • 淺析Spring的事務(wù)實(shí)現(xiàn)原理

    淺析Spring的事務(wù)實(shí)現(xiàn)原理

    這篇文章主要為大家詳細(xì)介紹了Spring中事務(wù)實(shí)現(xiàn)的原理,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Spring有一定的幫助,需要的可以參考一下
    2022-11-11

最新評(píng)論