小程序云开发之–微信公众号文章采集篇

​ 相信不少小伙伴都有想过做一个属于自己的小程序,又苦于没有服务器以及备案域名、网站ssl证书等,微信小程序作为前端后端就有很多了诸如Spring全家桶等小程序能接收到后端返回的值需要小程序内添加合法域名(域名备案https协议)

这里直接进入教学

公众号中有专门的接口(也有专门的文档) 那么如何采集小程序的文章来做到为我所用呢?

第一步: 获取access_token

通过文档可以看出 想要获取这个access_token需要以下三个参数

其中grant_type的值为client_credential用于获取access_token

appidsecret在公众号内可以找到

完成以上配置之后就可以采集文章了,

我们可以手动访问获取token或者postman

有了token之后采集文章就很方便了 下面开始操作

从官方文档中可以看到提供的接口还是挺多的

这里拿草稿箱做示范吧 其他的像图文、视频等素材的采集方法都是一样的

第一个token我们已经有了接下来就是offsetcount了 最后一个参数可以不要

获取文章数据

获取到素材之后 打印结果

说明我的草稿箱里有三条数据 确实只有三条

文章数据的处理

我们需要把自己需要的参数获取然后添加进数据库

注意⚠️这里有个问题就是如果这个文章已经采集过了那么我们就跳过,如果全部数据都存在那么打印 文章已经存在

最后就是把数据库没有的数据放入到数据库中

以下是测试结果

如果全部数据都存在

博客小程序:万神资源小栈
放入部分代码:

/*** 获取公众号文章信息* @param {*} accessToken*/
async function getWechatPosts(accessToken, offset, count) {let url = `https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=${accessToken}`var options = {method: 'POST',json: true,uri: url,body: {"type": "news","offset": offset,"count": count}}const result = await rp(options)let rbody = (typeof result === 'object') ? result : JSON.parse(result);return rbody;
}/*** 同步文章的小程序码*/
async function syncPostQrCode() {let configData = await getConfigInfo("syncPostQrCode");if (configData == null) {console.info("未获取相应的配置")return;}console.info(configData)let page = parseInt(configData.value.currentOffset);let maxCount = parseInt(configData.value.maxSyncCount);let isContinue = true;while (isContinue) {let posts = await db.collection('mini_posts').orderBy('timestamp', 'asc').skip(page * 10).limit(10).field({_id: true,qrCode: true,timestamp: true}).get()console.info(posts)if (posts.data.length == 0) {isContinue = false;break;}for (var index in posts.data) {if (posts.data[index].qrCode != null) {continue}let scene = 'timestamp=' + posts.data[index].timestamp;let result = await cloud.openapi.wxacode.getUnlimited({scene: scene,page: 'pages/detail/detail'})if (result.errCode === 0) {const upload = await cloud.uploadFile({cloudPath: posts.data[index]._id + '.png',fileContent: result.buffer,})await db.collection("mini_posts").doc(posts.data[index]._id).update({data: {qrCode: upload.fileID}});}}if ((page - parseInt(configData.value.currentOffset)) * 10 > maxCount) {isContinue = false;}else {page++}}let data = { currentOffset: page - 1, maxSyncCount: 100 }await db.collection("mini_config").doc(configData._id).update({data: {value: data}});}

以上就是所有内容了 更多精彩内容请关注我~

小程序云开发之--微信公众号文章采集篇相关推荐

  1. 商城前端模板_如何理解微信小程序和微商城,微信公众号以及APP之间的关系?一张图看懂了!...

    老张的一位粉丝,花了几天时间把知乎里面分享的一些关于微信小程序,微信商城,微信公众号,以及APP的相关介绍全看完了. 然后用他自己的话描述了微信小程序和微商城,微信公众号以及APP之间的关系,如下图所 ...

  2. 2021最新外卖霸王餐小程序、H5、微信公众号版外系统源码|霸王餐美团/饿了么系统 粉丝裂变玩源码下载

    2021年了,你还在用淘宝客吗?赶紧跟上互联网的大势吧,外卖cps就是cps人群趋势! 个人.个体.企业均可使用 外卖霸王餐小程序.H5.微信公众号版外系统源码|霸王餐美团/饿了么系统 粉丝裂变玩 2 ...

  3. 微信公众号发送小程序卡片_如何在公众号文章中添加小程序卡片

    在公众号中添加小程序卡片可以给阅读者更好的文章阅读体验,腾讯地图+小程序可以在文章内容中提供位置卡片和路线规划卡片,适用于各类含有地点信息的文章推文. 绑定腾讯地图+小程序的方法如下: 第一步:公众号 ...

  4. python采集微信公众号_Python爬虫,微信公众号文章采集工具

    #微信公众号文章采集 import requests from lxml import etree import re import os def get_con(url): #url="h ...

  5. 微信公众号文章采集的一些基础概念

    此文已在本人知乎号上首发: 微信公众号文章采集的一些基础概念 背景 经常有人问我微信文章采集相关的基础常识问题,对于新手来说,一些概念性的问题确实不太了解.但经常被问得也烦了,所以单独写一篇文章总结一 ...

  6. 小程序云开发实现微信支付,不需要搭建服务器

    一.开发微信支付功能一定要架设服务器吗? 2019年的最后一天,舍得叔叔沉浸在探索的兴奋中,验证了微信小程序云开发也能优雅实现微信支付!小程序的目标是建立一个"serverless" ...

  7. 微信小程序中获取用户微信公众号授权(openid)用来发送模板消息

    需求: 由于小程序不能直接向用户发送模板消息,所以需要用公众号向用户发送模板消息. 于是需要将小程序的openid和公众号的openid绑定在一起.提供两种思路: 方法一: 1.微信小程序和公众号都绑 ...

  8. mysql导入微信小程序云开发_微信小程序-云开发数据库上传json文件

    小程序新增了云开发功能,对于个人开发者是个利好消息.可以省去购买服务器,购买域名以及繁琐配置等步骤,减轻了开发者的负担.至于如何云开发我就不在这里赘述了,请移步微信小程序云开发官方文档,说的很清楚.这 ...

  9. 微信小程序云开发|基于微信小程序实现房产中介平台系统

    作者主页:编程千纸鹤 作者简介:Java.前端.Python开发多年,做过高程,项目经理,架构师 主要内容:Java项目开发.毕业设计开发.面试技术整理.最新技术分享 收藏点赞不迷路  关注作者有好处 ...

  10. 微信小程序云开发 mysql_微信小程序云开发学习笔记(一)云数据库

    云开发配置的环境:cloud-learning 云开发环境初始化准备 需要: APPID 操作: 在创建项目时,填入APPID并选择不使用云函数 进入到开发者页面,点击左上角的云开发并选择开通 设置云 ...

最新文章

  1. Maven最全笔记,99%的人都收藏了!
  2. 算法学习之路|统计同成绩学生
  3. 全新 Hexo Material Design 主题 Mellow
  4. AngularJS分层开发
  5. hadoop的HA高可用配置(没有搞完)
  6. 阅读Java_如何阅读 Java 开源代码?
  7. xv6/调度算法及并发程序设计
  8. qt学习之键盘事件( keyPressEvent)
  9. 以太坊开发入门,完整入门篇
  10. Deconvolutional Networks论文解读
  11. android原生ios,Windows Phone的原生iOS/Android应用程序
  12. eclipse 类文件编辑器找不到源的问题
  13. linux添加模块设备,linux采用模块方法,添加一个新的设备
  14. 数据结构(计算机存储、组织数据方式)
  15. 英文写作佳句300例
  16. 23andMe宣称其基因报告可以检测2型糖尿病患病风险
  17. CSGO 控制台 准星详细设置
  18. matlab计算三角格网面积,MATLAB中plot的用法
  19. 汽车防抱死系统_ABS_建模与模糊PID控制研究
  20. 何志强:张尚昀式的当代好青年

热门文章

  1. 服务器多网卡同一网段
  2. 这部关于 AI 的纪录片,还是值得一看的
  3. win32com 处理word和excel文档说明
  4. python提取某一列数据,Python numpy 提取矩阵的某一行或某一列的实例
  5. Triplet-Graph Reasoning Network for few-shot Metal Generic Surface Defect Segmentation论文理解
  6. spring boot整合elk
  7. RPA---Uipath Try Catch
  8. Word2019 未找到 MathPage.wll 文件的解决方法
  9. java之简易生成彩色二维码实践
  10. JavaSrcipt学习(学习打卡Day8)