微信小程序页面收录推送

微信小程序页面收录推送

微信现已开放小程序内搜索,开发者可以通过 sitemap.json 配置,或者管理后台页面收录开关来配置其小程序页面是否允许微信索引。当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。当用户的搜索词条触发该索引时,小程序的页面将可能展示在搜索结果中。 爬虫访问小程序内页面时,会携带特定的 user-agent:mpcrawler 及场景值:1129。

这就是微信小程序官方的原话,也就是如今微信小程序已经可以被爬虫进行爬取了,这将带来新的一波流量红利,抓住这一波流量红利可以加快推广自己的微信小程序为自己带来收益。

微信小程序默认就是全部收录的,但是腾讯官方能不能把你的小程序页面全部进行收录就是另外的问题了。如果并没有被全部收录,或者说收录的页面数量过低,那么我们就可以自己进行推送,让微信可以更及时的收录到小程序的页面信息,让我们提交的页面信息将可能被用于小程序搜索结果展示。

默认情况下的收录情况:(如果存在部分页面不想被收录的,需要自行进行设置屏蔽)

{
  "rules":[{
    "action": "allow",
    "page": "*"
  }]
}

那么当你的收录页面比较少的时候就需要自行进行页面推送了。
官方的介绍在这:官网 这里就不对官网介绍的内容重复了,下面直接上代码吧。

import requests
import json
from fake_useragent import UserAgent

ua = UserAgent()
header = {"User-Agent": ua.random}
query = "userName=wechat_user"  

# 获取小程序的access-token值的地址
url = "https://api.weixin.qq.com/cgi-bin/token"

# 配置自己小程序的个人信息
param = {"grant_type": "client_credential", "appid": "你的小程序AppId值", "secret": "你的小程序密钥)"}

# 提交的小程序页面信息
access_param = {"pages": [
    {
        "path": "pages/video/index",
        "query": query
    },
    {
        "path": "pages/html/index",
        "query": query
    },
    {
        "path": "pages/index/index",
        "query": query
    }
]
}

try:
    # 发起第一次请求获取access-token值
    res = requests.get(url, headers=header, params=param)
    if res.status_code == 200:
        content = json.loads(res.text)
        access_token = content['access_token']
        print("access:", access_token)
        
        # 构造请求收录页面的地址
        access_url = "https://api.weixin.qq.com/wxa/search/wxaapi_submitpages?access_token={}".format(access_token)
        try:
            # 发起第二次请求,请求微信官方进行收录自己小程序的页面
            res = requests.post(access_url, headers=header, data=json.dumps(access_param))
            if res.status_code == 200:
                print(res.text)
            else:
                print("状态码:", res.status_code)
                print(res.text)
        except Exception as e:
            print("fail:", e)

    else:
        print("状态码:", res.status_code)
        print(res.text)
except Exception as e:
    print("fail:", e)

对于小程序的APPID值以及小程序的密钥查看方式(在开发->开发设置中查看)
在这里插入图片描述
只要请求返回的结果的值是0,那么说明请求就已经成功了,如果出现了问题,可以参考下面的值,查看问题出在了那里。

说明 最低版本
-1 系统繁忙,此时请开发者稍候再试
40066 递交的页面被sitemap标记为拦截,具体查看errmsg提示。
40210 pages 中的path参数不存在或为空
40212 paegs 当中存在不合法的query,query格式遵循URL标准,即k1=v1&k2=v2
40219 pages不存在或者参数为空
47001 http请求包不是合法的JSON
47004 每次提交的页面数超过1000(备注:每次提交页面数应小于或等于1000)
47006 当天提交页面数达到了配额上限,请明天再试
85091 小程序的搜索开关被关闭。请访问设置页面打开开关再重试
85083 小程序的搜索功能被禁用
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115114.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Landsat 8卫星波段介绍以及波段组合[通俗易懂]

    Landsat 8卫星波段介绍以及波段组合[通俗易懂]Landsat8波段介绍: Landsat8 波段名称 BandName 波长范围(µm) Bandwidth 空间分辨率(m) Resolution 陆地成像仪:OperationalLandImager(OLI) Band1Coastal(海岸波段,可见) 0.43–0.45 30 Band2Blue(蓝波段

    2022年7月23日
    23
  • Pytest(6)重复运行用例pytest-repeat[通俗易懂]

    Pytest(6)重复运行用例pytest-repeat[通俗易懂]前言平常在做功能测试的时候,经常会遇到某个模块不稳定,偶然会出现一些bug,对于这种问题我们会针对此用例反复执行多次,最终复现出问题来。自动化运行用例时候,也会出现偶然的bug,可以针对单个用例,

    2022年7月28日
    10
  • 彻底理解position与anchorPoint

    彻底理解position与anchorPoint原文  http://www.cnblogs.com/benbenzhu/p/3615516.html引言相信初接触到CALayer的人都会遇到以下几个问题:  为什么修改anchorPoint会移动layer的位置? CALayer的position点是哪一点呢? anchorPoint与position有什么关系?我也迷惑过,找过网上的教程,

    2022年10月8日
    4
  • IMDb Top 250佳片榜_吹哨人 电影

    IMDb Top 250佳片榜_吹哨人 电影互联网电影资料库(英语:InternetMovieDatabase,简称IMDb)是一个关于电影演员、电影、电视节目、电视艺人、电子游戏和电影制作小组的在线数据库。IMDb开办于1990年10月17日,从1998年开始成为亚马逊公司旗下的网站,在2010年10月17日时,IMDb庆祝了他们20周年的纪念。用户评分最高的250部电影进入Top250榜单,但并非简单地根据平均分值来排名,而…

    2022年9月23日
    3
  • js如何在前端控制台打印

    在js中右中全局方法可以在控制台console中打印信息:1、console.log(123);2、console.info(456);3、console.warn(666);4、console.error(23333);在浏览器端,按下F12可以打开浏览器的console窗口,查看即可。不同方法展示效果也不同,上图是log()输出的,下图是warn()输出的以及e…

    2022年4月5日
    36
  • MessageDigest类的使用

    MessageDigest类的使用随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)在前面java中的MessageDigest类中简要介绍了它的一些作用和方法,下面给个例子,对文件和字符串MD5分别给了两个例子,代码如下:packagecom.home;importjava.io….

    2022年6月17日
    32

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号