网页抓取数据百度百科(网页爬虫:就是服务器端部署一个1.html网页的数据思路)

优采云 发布时间: 2021-10-21 23:15

  网页抓取数据百度百科(网页爬虫:就是服务器端部署一个1.html网页的数据思路)

  网络爬虫:是一种用于获取互联网上指定规则的数据的程序。

  想法:

  1.为了模拟网络爬虫,我们现在可以在我们的 tomcat 服务器上部署一个 1.html 网页。(部署步骤:在tomcat目录的webapps目录的ROOTS目录下新建1.html。使用notepad++编辑内容:

  )

  2.使用URL与网页建立联系

  3.获取输入流,用于读取网页内容

  4.建立正则规则,因为这里我们是爬取网页中的邮箱信息,所以创建一个匹配邮箱的正则表达式:String regex="\w+@\w+(\.\w+)+" ;

  5.将提取的数据放入集合中。

  代码:

  

import java.io.BufferedReader;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.net.URL;

import java.util.ArrayList;

import java.util.List;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

/*

* 网页爬虫:就是一个程序用于在互联网中获取指定规则的数据

*

*

*/

public class RegexDemo {

public static void main(String[] args) throws Exception {

List list=getMailByWeb();

for(String str:list){

System.out.println(str);

}

}

private static List getMailByWeb() throws Exception {

//1.与网页建立联系。使用URL

String path="http://localhost:8080//1.html";//后面写双斜杠是用于转义

URL url=new URL(path);

//2.获取输入流

InputStream is=url.openStream();

//加缓冲

BufferedReader br=new BufferedReader(new InputStreamReader(is));

//3.提取符合邮箱的数据

String regex="\\w+@\\w+(\\.\\w+)+";

//进行匹配

//将正则规则封装成对象

Pattern p=Pattern.compile(regex);

//将提取到的数据放到一个集合中

List list=new ArrayList();

String line=null;

while((line=br.readLine())!=null){

//匹配器

Matcher m=p.matcher(line);

while(m.find()){

//3.将符合规则的数据存储到集合中

list.add(m.group());

}

}

return list;

}

}

  注意:执行前需要开启tomcat服务器

  操作结果:

  总结

  以上就是小编介绍的使用正则表达式实现网络爬虫的思路的详细讲解。我希望它会对你有所帮助。如果有什么问题,请给我留言,小编会及时回复您。非常感谢您对网站的支持!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线