全网整合营销服务商

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

免费咨询热线: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编写简单的网络爬虫  # 被称为  # 选择器  # 类似于  # 的是  # 互联网  # 是一种  # 给你  # 我会  # 我都  # 我现在  # 则是  # 已被  # 只需  # 不懂  # 给我们  # 要把  # 我们可以  # 并将  # 这样一个  # 应用于 


相关文章: 专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  广平建站公司哪家专业可靠?如何选择?  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  如何通过西部数码建站助手快速创建专业网站?  Python如何创建带属性的XML节点  高端智能建站公司优选:品牌定制与SEO优化一站式服务  公司门户网站制作流程,华为官网怎么做?  如何挑选最适合建站的高性能VPS主机?  c++怎么用jemalloc c++替换默认内存分配器【性能】  如何用虚拟主机快速搭建网站?详细步骤解析  建站ABC备案流程中有哪些关键注意事项?  独立制作一个网站多少钱,建立网站需要花多少钱?  制作营销网站公司,淘特是干什么用的?  实现虚拟支付需哪些建站技术支撑?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  高端企业智能建站程序:SEO优化与响应式模板定制开发  网站制作公司,橙子建站是合法的吗?  如何通过山东自助建站平台快速注册域名?  广州建站公司哪家好?十大优质服务商推荐  如何在云虚拟主机上快速搭建个人网站?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  如何通过.red域名打造高辨识度品牌网站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  如何通过主机屋免费建站教程十分钟搭建网站?  制作网站的模板软件,网站怎么建设?  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  建站之星在线客服如何快速接入解答?  如何确保FTP站点访问权限与数据传输安全?  建站之星伪静态规则如何设置?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  如何在万网开始建站?分步指南解析  ui设计制作网站有哪些,手机UI设计网址吗?  建站之星如何助力网站排名飙升?揭秘高效技巧  如何快速搭建个人网站并优化SEO?  电脑免费海报制作网站推荐,招聘海报哪个网站多?  贸易公司网站制作流程,出口贸易网站设计怎么做?  代刷网站制作软件,别人代刷火车票靠谱吗?  阿里云网站制作公司,阿里云快速搭建网站好用吗?  Swift中switch语句区间和元组模式匹配  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  怎么将XML数据可视化 D3.js加载XML  网站制作员失业,怎样查看自己网站的注册者?  公司网站设计制作厂家,怎么创建自己的一个网站?  如何在阿里云ECS服务器部署织梦CMS网站?  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  平台云上自主建站:模板化设计与智能工具打造高效网站  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  实例解析Array和String方法  网站制作大概要多少钱一个,做一个平台网站大概多少钱? 

您的项目需求

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