位置: 编程技术 - 正文

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)

  • 合伙企业税务筹划点
  • 税务稽查最坏结果不知情人员怎么办
  • 个人独资 所得税
  • 不在经营范围内开票会受到什么惩罚
  • 农产品普通发票抵扣政策
  • 收到进项发票是什么凭证
  • 企业审计费入什么科目
  • 城建税和教育附加税
  • 印花税的征税对象包括
  • 未支付商标使用费怎么办
  • 发票边上的虚线是什么
  • 外籍员工个税信息采集
  • 将自产产品无偿赠送 会计处理
  • 财务杠杆系数简单计算方法
  • 个税扣缴端如何删除员工信息
  • 会计当年是指哪一年
  • 免税单位无租使用纳税单位土地
  • 建筑施工企业在12个月内连续发生
  • 2019年固态硬盘价格
  • 如何解决浏览器禁止访问
  • 定向增发利好还是利空股票
  • 存货跌价准备是谁的备抵账户
  • 建筑公司分包
  • 不动产租赁如何缴纳增值税
  • win10安全中心通知关闭
  • 公司多交的公积金能退吗
  • iphone中的照片如何找回
  • pddocument.load
  • 代金券与抵扣券的区别
  • Win10 1809 17763.2268 更新发布:附更新修复内容汇总
  • 想做酒水批发的生意怎么做?
  • 无偿划转长期股权投资
  • 收到员工罚款分录
  • phpsession和cookie
  • javascript图表
  • 权责发生制下确认的未开票收入是否缴纳增值税
  • python 命令行参数解析
  • 关于申请补发工资的申请
  • audit.exe
  • 购进原材料款项未付应编制什么凭证
  • 土石方工程的税费缴纳方法
  • 公司购买的商品是白酒用于招待现金流项目是哪类
  • web cms漏洞
  • 应收账款提坏账准备的方法
  • mongodb 数据文件
  • 哪些行业不用交税
  • 发票超额怎么办
  • 税款追征期三年
  • 资产减值损失属于
  • 小企业会计准则2023电子版
  • sql效率优化
  • 进项有效期
  • 结转损益类科目余额
  • 营销策划费用是
  • 人力资源服务费是什么意思
  • 0税率出口退税
  • 应收票据及应收账款怎么算
  • 民非企业怎么给员工交五险
  • 先开票后发货是什么意思
  • 资产减值损失结转到本年利润吗
  • 临建费用包含在哪里
  • 商业承兑汇票是什么
  • win8.1升级到win10
  • 2003怎么创建用户
  • ubuntu系统怎么修改ip地址
  • fedora使用
  • win7 管理
  • windows7旗舰版开机声音
  • yum providers命令
  • Unity3D游戏开发(第2版)pdf
  • linux启动的过程
  • 在windows下搭建snort和base
  • android 图片滚动
  • 不使用flash
  • js 数组处理
  • 国税网上开票怎么不显示界面
  • 金税盘电子发票怎么开
  • 新疆农信怎么注册登录
  • 花店会计主要做什么
  • 济宁任城区多大面积
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设