位置: 编程技术 - 正文

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)

  • 土地增值税扣除成本
  • 软件产品即征即退备案资料
  • 个人所得劳务报酬税率
  • 网银制单了没有审核有影响吗
  • 公司注销单位社保欠费怎么处理
  • 如何查看发票是否被抵扣
  • 资产减值损失在利润表怎么填列
  • 职工薪酬会计准则
  • 主营业务收入计入什么明细账
  • 电商平台流量费用怎么算
  • 公司开出增值税发票可以作为货款证据起诉
  • 收到保险赔款是什么意思
  • 村集体经济组织法
  • 第三方用人单位应承担哪些责任
  • 工厂报废的产品价格有规定吗
  • 金融资产的减少为什么记在贷方
  • 公司给离职员工个税零申报
  • 交增值税入什么科目
  • 小规模纳税人提供设计服务税率
  • 7月1日所有公司发票系统需要升级,办公用品发票买什么开什么
  • 个人转账至公司要交税吗
  • 资产基金科目如何选择
  • 找私人贴现怎么做账
  • 财务管理和会计学哪个好就业
  • 员工罚款可以从工资里扣吗
  • 固废处理计入什么会计科
  • 销售商品发生的业务招待费计入什么科目
  • 企业停产没有收入,费用可以计入长期待摊费用吗
  • 退还工会经费会退回吗
  • 第三方科技
  • macos10.15.7
  • 微软 windows11
  • 对于以长期投资为目的
  • 会计核算的职能主要是从什么方面综合反映
  • 嵌入式软件开票税负是1%还是3%
  • 语义特征的语法学概念
  • 出口退税抵减应计入哪里
  • 母公司为子公司提供担保需要决议吗
  • 进项加计抵减会计分录怎么做
  • 维保措施及售后服务方案
  • 运费计入什么会计分录
  • 织梦怎么用
  • 生产企业免抵退是什么意思
  • 收到企业所得税汇算清缴退税账务处理
  • 接受母公司捐赠现金分录
  • 进项税额是怎么算的
  • 残保金是应交税费吗
  • 未分配利润转增股本
  • 政府专项基金属于什么类
  • 税务局退回水利基金账务怎么处理
  • 产品质量的保证需要哪几方面的支持
  • 押金抵货款怎样写协议
  • 发票遗失复印件可以入账吗
  • 销售净利率的范围
  • 车辆保险发票能补开吗
  • 购车怎么做会计分录
  • 在一台服务器上安装软件
  • innodb.trx
  • winhlp32.exe - winhlp32是什么进程
  • winxp网络设置在哪
  • vmware tools安装包在哪
  • 关闭win7屏保
  • Win10系统里的Smartscreen筛选器的使用以及开启方法
  • linux的命令行指的是什么
  • linux操作系统配置网络
  • linuxmain函数
  • Android屏幕外侧滑条
  • 命令以管理员运行
  • javascript中的闭包
  • jquery 动态绑定
  • unity3d项目
  • 全屏沉浸式
  • Python性能优化指南
  • unity3d documentation
  • 最简单的十个菜
  • 消费税由消费者承担吗
  • 广西壮族自治区图书馆
  • 浙江国地税申报网
  • 购置税完税证明电子版怎么查看
  • 江西税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设