位置: 编程技术 - 正文

NodeJS制作爬虫全过程(续)(nodejs爬虫框架crawler)

编辑:rootadmin

推荐整理分享NodeJS制作爬虫全过程(续)(nodejs爬虫框架crawler),希望有所帮助,仅作参考,欢迎阅读内容。

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

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

如图所示,$('.reply_author').eq(0).text().trim();得到的值即为正确的第一条评论的用户。

{<1>}

在eventproxy获取评论及用户名内容后,我们需要通过用户名跳到用户界面继续抓取该用户积分

在eventproxy这一次中,我们要找到score是放在哪里(class="big")。

{<2>}

找到classname就好办了,我们先试着把结果输出一下

运行程序,这段代码得到的结果。

NodeJS制作爬虫全过程(续)(nodejs爬虫框架crawler)

{<3>}

但是问题来了,我们在.end()的回调函数中能正确输出结果,但是不能正确的输出outcome。仔细一看,需要输出的outcome是一个Request对象。这是因为粗心犯的错的,.end()函数并不会传递返回值给Request对象,需要将结果返回到上一层(users)。

把users好好地输出发现除了score1其他是正确值。仔细调试发现,程序是先进行了console.log(),然后再进行.map()。更准确地说,在.map()函数内,.get()的回调函数并没有执行完赋值score,return 返回值就进行了。这就是回调函数的异步,而外层的同步操作是不会等待回调函数做完操作的。

{<4>}

我的做法就是eventproxy再emit一层消息,伴随着消息把需要的数据一起传递给接收消息操作.after(),只有当消息全部接收完毕,再打印出传递的参数(结果)。

{<6>}

这个问题解决了,但score1的数值好像太大了点吧。再一看,原来class='big'有两个,用户的话题收藏也是属于这个class。我们得通过cheerio的.slice( start, [end] )来切取第一个元素,即将score 修改为 score = $('.big').slice(0).eq(0).text().trim();。正确结果如图。

{<7>}

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中的path.extname方法使用说明 方法说明:返回path路径文件扩展名,如果path以‘.'为结尾,将返回‘.',如果无扩展名又不以'.'结尾,将返回空值。语法:path.extname(p)由于该方法属于pa

标签: nodejs爬虫框架crawler

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

上一篇:NodeJS制作爬虫全过程(node.js写爬虫)

下一篇:sails框架的学习指南(spiral框架)

  • 税种核定在电子版怎么查
  • 印花税的实质
  • 2023年印花税如何计算
  • etc发票可以抵扣进项税吗
  • 航天金税服务费诈骗
  • 私营独资企业可以变更法人吗
  • 预收账款有余额是啥原因
  • 提取备用金如何在退回公司
  • 调整以前年度销售费用会计分录
  • 管理人员的奖惩制度
  • 固定资产的发票
  • 旧货如何卖
  • 无实收资本能日本投资吗
  • 融资租赁资产如何入账
  • 白蚁防治费计入什么科目
  • 金税盘使用说明
  • 个税贷方余额比实际金额多
  • 怎么核算外汇业务
  • 转让知识产权的本人申明
  • 收到一笔款在在当月已退回怎么做账?
  • 库存月底怎么一次性结转成本?
  • 委托发行股票会亏本吗
  • 商品进销差价主营业务收入
  • 如何在excel中自动筛选
  • 清空收藏夹里面的歌曲
  • win7系统管理员密码忘了怎么办
  • 如何阻止win10升级到win11
  • win10任务栏快捷图标不见了
  • 苹果电脑连接打印机打印不出来
  • 如何免费获得microsoft
  • 高新企业有啥用
  • 企业收到分红款是免税收入吗
  • mac怎么切换输入方式
  • 支付工资属于费用吗
  • 税务机关为小规模纳税人
  • 二级资本债向谁发行
  • 损益类账户怎么做会计分录
  • javascript速成
  • 滴滴打车老板起源故事
  • php面试知识点
  • 递延所得税资产借贷方向
  • 资产负债表上应付账款根据什么填制
  • Vue 拖拽排序
  • 股权转让分期付款风险
  • 增值税纳税申报类型怎么填
  • 框架合同的印花税
  • 政府补助怎么判断总额法还是净额法
  • 差旅费报销会计分录题目
  • 本年计算扣除限额的基数计算公式
  • 公司股东就是董事吗
  • 资产减值损失借贷方向
  • 去年主营业务收入少计
  • 财务费用中的利息支出
  • 收客户逾期利息会计分录
  • 二手市场机械设备
  • 酒店支付清洗费属于什么会计科目
  • 收到以前年度税费返还的会计分录
  • 企业筹建期的开办费后期怎么算
  • 无形资产投资入股是否缴纳企业所得税
  • 注册资本可以是欧元吗
  • mysql优化的几种方法
  • sqlserver 触发器 redis
  • 触发器中instead of
  • Vista下jusched.exe进程与禁用
  • linux终端记录
  • win10系统怎么隐藏c盘
  • windows找不到cmd怎么办
  • win10商店没有图标
  • 协同编程工具
  • javascript到c
  • javascript内置对象应用团购
  • ubuntu touch教程
  • fiori开发
  • java stringapi
  • auto.js获取剪切板内容
  • centos7如何安装
  • 税控盘怎么分发
  • 简述纳税人与负税的区别
  • 申报地税的流程图
  • 增值税普通发票和电子普通发票的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设