java抓取网页内容(使用java语言抓取网页中的邮箱地址实现思路:)
优采云 发布时间: 2021-09-16 21:13java抓取网页内容(使用java语言抓取网页中的邮箱地址实现思路:)
在现实生活中,我们经常在浏览网页时看到我们需要的信息,但由于信息太大,无法一一保存
接下来,让我们以获取电子邮件地址为例,使用Java语言在网页中获取电子邮件地址
实现思路如下:
1、使用a。URL对象绑定网络上网页的地址
2、通过的openconnection()方法获取urlconnection对象。URL对象
3、通过urlconnection object的getinputstream()方法获取网络文件的InputStream对象InputStream
4、loop读取流中的每一行数据,将每一行字符与pattern对象编译的正则表达式匹配,并获取电子邮件地址
接下来,不用多说,直接转到代码:
import java.io.BufferedReader;
import java.io.InputStreamReader;
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 Exception {
//设定目标网址
URL url = new URL("目标网址");
// 打开连接
URLConnection conn = url.openConnection();
// 设置连接网络超时时间
conn.setConnectTimeout(1000 * 10);
// 读取指定网络地址中的文件
BufferedReader bufr = new BufferedReader(new InputStreamReader(conn.getInputStream()));
//在内存中构建一个空的字符串来准备获取读到的邮箱
String line = null;
// 设置匹配email的正则表达式;
String reg = "[a-zA-Z0-9_-]+@\\w+\\.[a-z]+(\\.[a-z]+)?";
Pattern p = Pattern.compile(reg);
//循环输出读到的邮箱地址
while((line = bufr.readLine()) != null) {
Matcher m = p.matcher(line);
while(m.find()) {
System.out.println(m.group());
}
}
}
}
我的水平有限,无法详细解释上述代码。请原谅我