亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

微信小程序云開發,不借助額外服務端爬蟲實現小說閱讀小程序

 

最近才注意到微信小程序增加了個云開發,手上項目不多就趕緊試試手,新增加云函數和云數據庫;云函數就類似于服務端,云函數其實就是封裝了mongdb,不過小程序js中可以直接操作數據庫,只是與云函數對的操作權限不同

微信小程序云開發,不借助額外服務端爬蟲實現小說閱讀小程序

 

云控制臺:

微信小程序云開發,不借助額外服務端爬蟲實現小說閱讀小程序

 

開始我的項目,我利用云函數中科可以使用node模塊,于是就試試能不能寫個爬蟲小程序

微信小程序云開發,不借助額外服務端爬蟲實現小說閱讀小程序

 

const cheerio = require("cheerio"); //進入cheerio模塊

let charset = require('superagent-charset'); //解決亂碼問題:

let superagent = require('superagent'); //發起請求

charset(superagent);

cloud.init()

// 云函數入口函數

exports.main = async (event, context) => {

let servceUrl = "https://xxxx/"

const result = await superagent

.get(servceUrl)

.charset('gb2312'); //取決于網頁的編碼方式

const data = result.text || '';

const $ = cheerio.load(result.text);

let hotList = $('.hot').find('.image');

let classifyList = $('.block');

let hotData = [];//熱榜

let classifyData = [];//分類推薦

for (let i = 0; i < hotList.length;i++){

let obj = {};

obj['url'] = $(hotList[i]).find('a').attr('href');

obj['imgurl'] = $(hotList[i]).find('img').attr('src');

obj['name'] = $(hotList[i]).find('img').attr('alt');

obj['autho'] = $(hotList[i]).next().find('dt').find('span').text();

obj['detail'] = $(hotList[i]).next().find('dd').text();

hotData.push(obj)

}

for (let i = 0; i < classifyList.length; i++) {

let obj = {};

let childData = []

let childDom = $(classifyList[i]).find('.lis').find('li');

for (let j = 0; j < childDom.length;j++){

let chilObj = {};

chilObj['name'] = $(childDom[j]).find('.s2').find('a').text();

chilObj['url'] = $(childDom[j]).find('.s2').find('a').attr('href');

chilObj['autho'] = $(childDom[j]).find('.s3').text();

childData.push(chilObj);

}

obj['classifyList'] = $(classifyList[i]).find('h2').text();//類別名稱

// obj['childDom'] = childDom.length;

obj['data'] = childData;

classifyData.push(obj)

}

return {

classifyData,

hotData

};

}

果然是沒問題的,不過中間需要注意開始npm的構建,還可以引入ui,推薦vantui,基本功能都有,中間由于有些編碼問題做了一些處理,上面是我云函數的代碼,下面是如何調用云函數:

微信小程序云開發,不借助額外服務端爬蟲實現小說閱讀小程序

 

主要代碼: wx.cloud.callFunction({

name:'getList',

data:{}

}).then(res=>{

wx.hideLoading ();

console.log(res.result);

const result = res.result || {};

this.setData({

hotdata: result.hotData,

classtyf: result.classifyData

})

}).catch(err=>{

wx.hideLoading ();

console.log(err)})

},

中間還涉及到閱讀記錄的保存,于是我簡單實用了云數據庫:

微信小程序云開發,不借助額外服務端爬蟲實現小說閱讀小程序

 

代碼簡單示意,文檔里面都有哈,我用到的兩張表

微信小程序云開發,不借助額外服務端爬蟲實現小說閱讀小程序

 

今天分享到此。

分享到:
標簽:程序 微信小
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定