Java正则表达式--网页爬虫

Posted 菜鸟奋斗史

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java正则表达式--网页爬虫相关的知识,希望对你有一定的参考价值。

网页爬虫:其实就一个程序用于在互联网中获取符合指定规则的数据 爬取邮箱地址,爬取的源不同,本地爬取或者是网络爬取

(1)爬取本地数据:

 1     public static List<String> getMails() throws IOException {
 2         // 1.读取源文件
 3         // 爬取本地文件
 4         BufferedReader bufr = new BufferedReader(new FileReader("D:\\mail.txt"));
 5         // 2.对读取的数据进行规则的匹配,从中获取符合规则的数据
 6         String mail_regex = "\\[email protected]\\w+(\\.\\w+)+";
 7         List<String> list = new ArrayList<String>();
 8         Pattern p = Pattern.compile(mail_regex);
 9         String line = null;
10         while ((line = bufr.readLine()) != null) {
11             Matcher m = p.matcher(line);
12             while (m.find()) {
13         // 3.将符合规则的数据存储到集合中
14                 list.add(m.group());
15             }
16         }
17         return list;
18     }

运行结果:

 

(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 = "\\[email protected]\\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     }

 运行结果:

 

以上是关于Java正则表达式--网页爬虫的主要内容,如果未能解决你的问题,请参考以下文章

请大家帮帮忙. 使用java爬虫得到网页以后怎么提取里面自己需要的内容呢?如果会代码请您写一下.谢谢您

JAVA之旅(三十四)——自定义服务端,URLConnection,正则表达式特点,匹配,切割,替换,获取,网页爬虫

系统进阶学习python,爬虫,网页设计,正则表达式(附源代码)

PythonChallenge 2:爬虫和正则表达式

常用正则表达式最强汇总(含Python代码举例讲解+爬虫实战)

爬虫的基本原理