位置: 编程技术 - 正文

NodeJS制作爬虫全过程(node.js写爬虫)

编辑:rootadmin

推荐整理分享NodeJS制作爬虫全过程(node.js写爬虫),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node爬虫框架puppeteer,nodejs爬虫框架crawler,nodejs爬取数据,nodejs爬虫框架crawler,nodejs爬取数据,nodejs做爬虫,nodejs做爬虫,node js爬虫,内容如对您有帮助,希望把文章链接给更多的朋友!

今天来学习alsotang的爬虫教程,跟着把CNode简单地爬一遍。

建立项目craelr-demo我们首先建立一个Express项目,然后将app.js的文件内容全部删除,因为我们暂时不需要在Web端展示内容。当然我们也可以在空文件夹下直接 npm install express来使用我们需要的Express功能。

目标网站分析如图,这是CNode首页一部分div标签,我们就是通过这一系列的id、class来定位我们需要的信息。

使用superagent获取源数据

superagent就是ajax API来使用的Http库,它的使用方法与jQuery差不多,我们通过它发起get请求,在回调函数中输出结果。

它的res结果为一个包含目标url信息的对象,网站内容主要在其text(string)里。

使用cheerio解析

cheerio充当服务器端的jQuery功能,我们先使用它的.load()来载入HTML,再通过CSS selector来筛选元素。

其结果为一个个对象,调用 .each(function(index, element))函数来遍历每一个对象,返回的是HTML DOM Elements。

输出 console.log($element.attr('title'));的结果为 广州 年月日 NodeParty 之 UC 场之类的标题,输出 console.log($element.attr('href'));的结果为 /topic/cbecbcbeb2之类的url。再用NodeJS1的url.resolve()函数来补全完整的url。

NodeJS制作爬虫全过程(node.js写爬虫)

使用eventproxy来并发抓取每个主题的内容教程上展示了深度嵌套(串行)方法和计数器方法的例子,eventproxy就是使用事件(并行)方法来解决这个问题。当所有的抓取完成后,eventproxy接收到事件消息自动帮你调用处理函数。

结果如下

扩展练习(挑战)

获取留言用户名和积分

在文章页面的源码找到评论的用户class名,classname为reply_author。console.log第一个元素 $('.reply_author').get(0)可以看到,我们需要获取东西都在这里头。

首先,我们先对一篇文章进行抓取,一次性把需要的都得到即可。

我们可以通过 $('.big').text().trim()即为积分信息。

使用cheerio的函数.get(0)为获取第一个元素。

这只是对于单个文章的抓取,对于个还有需要修改的地方。

NodeJS制作爬虫全过程(续) 书接上回,我们需要修改程序以达到连续抓取个页面的内容。也就是说我们需要输出每篇文章的标题、链接、第一条评论、评论用户和论坛积分。如图

sails框架的学习指南 上周通过搭建CMS系统接触到了sails框架,知道一些ORM的概念。这周开始深入后台数据交互,发现twenty框架的数据结构在sails上又设计了一番(比如node、cat

node.js开机自启动脚本文件 #!/bin/bash###BEGININITINFO#Provides:xiyoulib#Required-Start:$all#Required-Stop:$all#Default-Start:#Default-Stop:#Short-Description:Startdaemonatboottime#Description:Enableserviceprovidedbydaem

标签: node.js写爬虫

本文链接地址:https://www.jiuchutong.com/biancheng/374215.html 转载请保留说明!

上一篇:了不起的node.js读书笔记之mongodb数据库交互(了不起的女孩)

下一篇:NodeJS制作爬虫全过程(续)(nodejs爬虫框架crawler)

  • 母公司合并子公司会计处理
  • 个人向公司账户存款
  • 销售返利的会计科目
  • 劳务收入个税需要进行所得税汇算吗
  • 委托贷款利息如何计算
  • 房产经纪公司成本费用
  • 坏账准备贷方核算内容
  • 会计凭证有哪些类型
  • 合并财务报表内部固定资产交易的抵消
  • 营改增后纳税人可以使用的发票种类
  • 建安企业异地个税怎么交
  • 印花税股权转让计税依据
  • 水费税收分类编码
  • 房产税的常见四大检查点
  • 宽带合同要交印花税吗
  • 白酒与外购产品的区别
  • 怎么核对银行存款余额和对账单余额
  • 作废已开具的普通发票
  • 事业单位固定资产处置流程
  • 建筑企业跨地区
  • 如何在win10中同步我的设置
  • 去除页眉的横线快捷方式
  • 员工招待费会计分录
  • 去年的发票今年怎么做会计分录
  • 如何编制处置固定资产
  • 间断性断网
  • 在win7中如何找到WAN服务
  • 纯净版 win10
  • 基金的管理费用包括什么
  • ctblocker
  • 未取得合法有效凭证可以税前扣除
  • 如何利用口诀记单词
  • 搭建自己的php mvc框架
  • 签了购房合同贷款办不下来怎么办
  • 用人单位未为劳动者缴纳社会保险费
  • yolov5的使用
  • static php作用
  • springboot比spring做了哪些改进
  • 网络安全实验室
  • 自动驾驶讲解
  • 计提工会经费明细表
  • 无实物的固定资产有哪些
  • 向境外股东分配股息预提所得税
  • 内账收入和成本怎样做
  • 营业收入与利润总额的比值
  • 销售二手固定资产
  • 电子发票如何作废,具体怎么操作
  • 制造费用账户在月末一般没有余额
  • 中级会计报名必须用电脑吗
  • 小规模企业出租不动产增值税税率
  • 利润总额包括什么项目
  • 账外房屋按评估值入账怎么进行会计处理
  • 税控盘服务费小规模可以抵扣吗
  • 企业转让固定资产属于什么收入
  • 其他应付款贷方表示什么意思
  • 评估入账的无形资产能摊销吗
  • 汽车几年折旧年限
  • win8系统c盘占用多大
  • windows server 2008下一些设置技巧及优化经验总结
  • vpngui.exe是什么进程
  • 在u盘里装win7
  • centos5.5网络配置
  • Win7电脑自动关机是什么原因
  • CentOS中-bash: lsb_release: command not found错误的解决方法
  • win8怎么进去安全系统
  • win7系统安装软件乱码
  • 如何自定义控件
  • android 欢迎页
  • WWW封装共享 [复制链接]
  • cmd命令format
  • python字符串常用的五种方法
  • 手机android版本强制升级
  • unity最新教程
  • jquery.css
  • python简要介绍
  • jquery图片轮播代码
  • 合作社的税率是多少
  • 加拿大鹅海关被税交多少
  • 车船税发票丢了怎么补办
  • 资源税是什么?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设