当前位置: 首页 > 后端技术 > Node.js

Koa2+Mongo+爬虫搭建一个新颖的微信小程序(本地开发)---编码遇到的问题

时间:2023-04-03 20:43:08 Node.js

更新于2019-01-02使用eggjs重构本项目,有兴趣的可以参考,首先传送门感谢作者的分享,非常好~,这里原地址记录了编码遇到的问题,这里只针对服务器进行验证。有同样问题的童鞋可以作为参考~本地环境:Node:v10.13.0OS:window7npm:6.4.1问题1(mongoose相关)问题描述:DeprecationWarning:collection.ensureIndexisdeprecated。请改用createIndexes。解决方案:mongoose.connect(config.dbUri,{useCreateIndex:true,useNewUrlParser:true})或mongoose.set('useCreateIndex',true)mongoose.connect(config.dbUri,{useNewUrlParser:true})对应源文件kendou-book/book-server/server/database/init.js,修改后的代码如下:...+varopts={+useCreateIndex:true,+useNewUrlParser:true+};-mongoose.connect(db);+猫鼬.connect(db,opts);问题描述:DeprecationWarning:collection.countisdeprecated解决方案:底层mongodb驱动已弃用.count()方法。您应该改用.estimatedDocumentCount()或.countDocuments()。对应源码文件kendou-book/book-server/server/tasks/runninng.js,修改涉及的代码如下:...//为下一个服务激活爬取数据awaittaskBook(item.bookId)letcount=awaitChapter.find({bookId:item.bookId-}).count()+}).countDocuments()问题2(puppetter相关)问题描述:ERROR:FailedtodownloadChromiumr588429!设置“PUPPETEER_SKIP_CHROMIUM_DOWNLOAD”环境变量以跳过下载。解决方法:vi.npmrctypepuppeteer_download_host=https://npm.taobao.org/mirrorsyarnaddpuppeteer-Dornpmipuppeteer--save-dev问题描述:(node:19996)UnhandledPromiseRejectionWarning:TimeoutError:NavigationTimeoutExceeded:30000msexceeded解决办法:对应源码文件kendou-book/book-server/server/crawler/book.js,涉及修改的代码如下:...console.log('bookkkk:',browser)constpage=awaitbrowser.newPage()awaitpage.goto(url,{waitUntil:'networkidle2',+timeout:3000000})对应源码文件kendou-book/book-server/server/crawler/chapter.js,涉及的代码修改如下:...constpage=awaitbrowser.newPage()awaitpage.goto(url,{waitUntil:'networkidle2',+timeout:3000000})问题3(源码缺陷)问题描述:在定义图书的schema时,字段(author)拼写错误。解决方法:对应的源码文件kendou-book/book-server/server/database/schema/book。js,涉及修改的代码如下:...-auhtor:{type:String},+author:{type:String},对应源码文件kendou-book/book-server/server/crawler/book.js,涉及修改后的代码如下:...letresult=awaitpage.evaluate(()=>{return{headImg:document.querySelector('.story_cover_m62topxsimg').getAttribute('src'),name:document.querySelector('.info_left_m62topxsh1').innerText,-作者:document.querySelector('.info_left_m62topxsh2a').innerText,+作者:document.querySelector('.info_left_m62topxsh2a').innerText,chapterNum:document.query.Selectorcp_dd_m62topxs').length}})参考链接:mongoose-relatedmongoose-relatedpuppetter安装踩坑-解决