爬虫访问小程序内页面时,会携带特定的 user-agent "mpcrawler" 及场景值:1129
判断请求是否来源于官方搜索爬虫的方法:
签名算法与小程序消息推送接口的签名算法一致。详情
参数在请求的header里设置,分别是:
X-WXApp-Crawler-Timestamp
X-WXApp-Crawler-Nonce
X-WXApp-Crawler-Signature
签名流程如下:
1.将token、X-WXApp-Crawler-Timestamp、X-WXApp-Crawler-Nonce三个参数进行字典序排序
2.将三个参数字符串拼接成一个字符串进行sha1加密
3.开发者获得加密后的字符串可与X-WXApp-Crawler-Signature对比,标识该请求来源于微信
小程序提供了两种页面路由方式:
a. navigator 组件
b. 路由 API,包括 navigateTo / redirectTo / switchTab / navigateBack / reLaunch
建议使用 navigator 组件,若不得不使用API,可在爬虫访问时屏蔽针对点击设置的时间锁或变量锁。