全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

网络爬虫案例解析

网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常被称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本,已被广泛应用于互联网领域。搜索引擎使用网络爬虫抓取Web网页、文档甚至图片、音频、视频等资源,通过相应的索引技术组织这些信息,提供给搜索用户进行查询。网络爬虫也为中小站点的推广提供了有效的途径,网站针对搜索引擎爬虫的优化曾风靡一时。

网络爬虫的基本工作流程如下:

1.首先选取一部分精心挑选的种子URL;

2.将这些URL放入待抓取URL队列;

3.从待抓取URL队列中取出待抓取在URL,解析DNS,并且得到主机的ip,并将URL对应的网页下载下来,存储进已下载网页库中。此外,将这些URL放进已抓取URL队列。

4.分析已抓取URL队列中的URL,分析其中的其他URL,并且将URL放入待抓取URL队列,从而进入下一个循环。

当然,上面说的那些我都不懂,以我现在的理解,我们请求一个网址,服务器返回给我们一个超级大文本,而我们的浏览器可以将这个超级大文本解析成我们说看到的华丽的页面

那么,我们只需要把这个超级大文本看成一个足够大的String  字符串就OK了。

下面是我的代码

package main.spider;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
/**
 * Created by 1755790963 on 2017/3/10.
 */
public class Second {
  public static void main(String[] args) throws IOException {
    System.out.println("begin");
    Document document = Jsoup.connect("http://tieba.baidu.com/p/2356694991").get();
    String selector="div[class=d_post_content j_d_post_content clearfix]";
    Elements elements = document.select(selector);
    for (Element element:elements){
      String word= element.text();
      if(word.indexOf("@")>0){
        word=word.substring(0,word.lastIndexOf("@")+7);
        System.out.println(word);
      }
      System.out.println(word);
    }
  }
}

我在这里使用了apache公司所提供的jsoup   jar包,jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

在代码里,我们可以直接使用Jsoup类,并.出Jsoup的connect()方法,这个方法返回一个org.jsoup.Connection对象,参数则是网站的url地址,Connection对象有一个get()方法返回Document对象

document对象的select方法可以返回一个Elements对象,而Elements对象正式Element对象的集合,但select()方法需要我们传入一个String参数,这个参数就是我们的选择器

String selector="div[class=d_post_content j_d_post_content  clearfix]";

我们的选择器语法类似于jquery的选择器语法,可以选取html页面中的元素,选择好后,就可以便利Elements集合,通过Element的text()方法获取html中的代码

这样,一个最简单的网络爬虫就写完了。

我选择的网址是 豆瓣网,留下你的邮箱,我会给你发邮件  这样一个百度贴吧,我扒的是所有人的邮箱地址

附上结果:

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# 网络爬虫案例  # 爬虫案例解析  # 教你如何编写简单的网络爬虫  # 使用Python编写简单网络爬虫抓取视频下载资源  # 使用scrapy实现爬网站例子和实现网络爬虫(蜘蛛)的步骤  # 以Python的Pyspider为例剖析搜索引擎的网络爬虫实现方法  # Java实现爬虫给App提供数据(Jsoup 网络爬虫)  # 基于Java HttpClient和Htmlparser实现网络爬虫代码  # python3使用urllib模块制作网络爬虫  # python使用rabbitmq实现网络爬虫示例  # Python网络爬虫实例讲解  # Android编写简单的网络爬虫  # 被称为  # 选择器  # 类似于  # 的是  # 互联网  # 是一种  # 给你  # 我会  # 我都  # 我现在  # 则是  # 已被  # 只需  # 不懂  # 给我们  # 要把  # 我们可以  # 并将  # 这样一个  # 应用于 


相关文章: 深入理解Android中的xmlns:tools属性  如何在腾讯云服务器快速搭建个人网站?  如何配置WinSCP新建站点的密钥验证步骤?  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  金*站制作公司有哪些,金华教育集团官网?  建站之星ASP如何实现CMS高效搭建与安全管理?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  如何通过二级域名建站提升品牌影响力?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  ,如何利用word制作宣传手册?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  在线教育网站制作平台,山西立德教育官网?  海南网站制作公司有哪些,海口网是哪家的?  如何在云服务器上快速搭建个人网站?  英语简历制作免费网站推荐,如何将简历翻译成英文?  定制建站流程步骤详解:一站式方案设计与开发指南  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  如何在建站之星网店版论坛获取技术支持?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  威客平台建站流程解析:高效搭建教程与设计优化方案  如何高效搭建专业期货交易平台网站?  韩国服务器如何优化跨境访问实现高效连接?  宝塔新建站点报错如何解决?  免费ppt制作网站,有没有值得推荐的免费PPT网站?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  如何在Golang中使用replace替换模块_指定本地或远程路径  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  如何通过多用户协作模板快速搭建高效企业网站?  如何在万网开始建站?分步指南解析  建站之星如何取消后台验证码生成?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  家具网站制作软件,家具厂怎么跑业务?  建站之星与建站宝盒如何选择最佳方案?  安徽网站建设与外贸建站服务专业定制方案  大连 网站制作,大连天途有线官网?  微信小程序 input输入框控件详解及实例(多种示例)  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  高端建站三要素:定制模板、企业官网与响应式设计优化  桂林网站制作公司有哪些,桂林马拉松怎么报名?  教学网站制作软件,学习*后期制作的网站有哪些?  如何在云虚拟主机上快速搭建个人网站?  如何选择服务器才能高效搭建专属网站?  MySQL查询结果复制到新表的方法(更新、插入)  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  北京的网站制作公司有哪些,哪个视频网站最好?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  公众号网站制作网页,微信公众号怎么制作?  如何用美橙互联一键搭建多站合一网站?  建站之星免费版是否永久可用?  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。