前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于spark的网络爬虫实现

基于spark的网络爬虫实现

作者头像
sparkexpert
发布2022-05-07 14:07:41
4840
发布2022-05-07 14:07:41
举报
文章被收录于专栏:大数据智能实战

爬虫是获取网络大数据的重要手段,爬虫是一种非常成熟的技术了,然而想着在spark环境下测试一下效果.

还是非常简单的,利用JavaSparkContext来构建,就可以采用原来java中的网页获取那一套来实现.

首先给定几个初始种子,生成一个JavaRDD对象即可         JavaRDD<String> rdd = sc.parallelize("urllist");

 JavaRDD<String> content = rdd.map(new Function<String, String>() {             public String call(String url) throws Exception {                 System.out.println(url);                 CloseableHttpClient client = null;                 HttpGet get = null;                 CloseableHttpResponse response = null;                 try {                     //## 创建默认连接                     client = HttpClients.createDefault();                     get = new HttpGet(url);                     response = client.execute(get);                     HttpEntity entity = response.getEntity();                     //## 获得输出字节流                     ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();                     entity.writeTo(byteArrayOutputStream);                     //## 转化为文档                     String html = new String(byteArrayOutputStream.toByteArray(), Charsets.UTF_8);                     Document document = Jsoup.parse(html);                     return html;                 } catch (Exception ex) {                     ex.printStackTrace();                     return "";                 } finally {                     if (response != null) {                         response.close();                     }                     if (client != null) {                         client.close();                     }                 }             }         });

当然可以从HTML再找到子页连接,继续以深度或者广度进行优先爬虫.

如输出http://docs.opencv.org/的文档如下:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-12-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档