位置: 编程技术 - 正文

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)

  • 开电竞公司计划书
  • 坏账准备怎么做T型账户
  • 负数怎么在excel里输入
  • 个人独资企业法人可以变更吗?
  • 冲减多计提的附加费
  • 常见的税收优惠
  • 劳务公司外地劳务是否需要预缴税款及会计处理
  • 合作经营利润分配税务处理
  • 企业多缴纳所得税怎么办
  • 海关进口关税专用缴款书可以抵扣增值税吗
  • 发票认证完是不是没开票
  • 免费拿样品
  • 中央空调 付款
  • 公司每年都要纳税吗?
  • 金税盘在电脑上怎么打开
  • 企业所得税如何计提会计分录
  • 企业对外投资需要注意的事项
  • 专票红冲如何做账
  • 小规模纳税人实行简易征收办法
  • 最新《资源税纳税标准
  • 签订借款合同要遵守规则吗
  • 广告服务差额征税
  • 出售报废电脑要交什么税
  • 销售退回冲减主营业务收入吗
  • 付款凭证和记账凭证一样吗
  • 房地产开发劳务合同范本
  • 货车的折旧率
  • 长期待摊费用多少钱
  • 小规模建筑公司可以开劳务发票吗
  • linux 操作系统查看
  • 微信收款会计分录,然后提现有手续费
  • 无法找到脚本文件c:\windows\system32
  • 公司车过户给个人流程
  • system idle process是什么进程(CPU的空闲率)
  • 腾讯电脑管家中的软件市场怎么拖到桌面
  • 物业专项维修资金可以退还吗
  • msvcp140.dll丢失怎么办
  • php版本升级
  • 在linux中使用什么命令可以动态查看文件内容
  • 从上布法罗荒野地区的惠特克顶小道向东看,阿肯色州奥沙克国家森林 (© Jens Lambert Photography/Getty Images Plus)
  • 布拉索夫地图
  • 大熊雨林中一只小熊
  • cpu和gpu性能对比
  • 新政府会计制度科目解读
  • 差旅费报销会议记录
  • php eval绕过
  • 固定资产的特点不包括
  • 金额太小不给开发票
  • 第二季度企业所得税会减第一季度吗
  • 固定资产加速折旧是什么意思
  • 征收率是税率吗
  • 盈利性学校收到财政补贴要缴企业所得税吗
  • python国内下载地址
  • mysql有几种
  • mysql 提示
  • 企业原材料成本占比
  • 电子发票能否作废
  • 电子增值税发票样本
  • 漏记以前年度财务费用怎么处理
  • 车船税怎么抵扣进项
  • 存货盘亏的账务处理怎么做
  • 电焊工劳保用品有哪些
  • 建账初期账务处理程序
  • 一次性关闭所有窗口的快捷键
  • ubuntu屏幕截图快捷键
  • dlg是什么意思中文
  • win32api.exe - win32api是什么进程
  • linux如何操作数据库
  • win10家庭版系统怎么样
  • 批处理!!
  • perl编程
  • python 进阶
  • 网络ping大包
  • nodejs实现文件下载
  • javascript对象主要包括
  • 税法税收保全的适用范围
  • 企业安置几级残疾人
  • 如何查询车辆购买的保险
  • 江苏地税局如何交社保
  • 农副产品批发价
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设