2019-06-04--Python爬取微信公众号准备01-认识url参数

原文地址:https://blog.csdn.net/sinat_37967865/article/details/84876509

第一部分:微信公众号历史文章API组成

https://mp.weixin.qq.com/mp/profile_ext?action=getmsg&__biz=MjM5MjAxNDM4MA==&f=json&offset=11&count=10&is_ok=1&scene=126&uin=777&key=777&pass_ticket=YDiylNY2QnOm5HbjBMJo%2Bve%2FatcYQxoOv9xbGY9iUcA%3D&wxtoken=&appmsg_token=1011_nUKMLgDnWR04QfLVBwEgr84cDigLB3JKm8p-NQ~~&x5=0&f=json HTTP/1.1

以下介绍几个主要参数:

  • __biz:相当于是当前公众号的id(唯一固定标志)
  • offset:文章数据接口请求偏移量标志(从0开始),每次返回的json数据中会有下一次请求的offset,这里一般是按10递增的
  • count:每次请求的数据量(亲测最多可以是10) ,所以可以固定为10
  • pass_ticket:可以理解是请求票据,而且隔一段时间后(大概几个小时)就会过期,失效后都需要重新抓包替换
  • appmsg_token:同样理解为非固定有过期策略的票据,失效后都需要重新抓包替换

第二部分:微信公众号访问的cookie组成:
访问微信公众号历史文章,我们是需要登录的,我们可以通过构建cookie去跳过登录过程
通过访问微信公众号文章,我们通过Fiddler抓包可以看到cookie的相关信息


image.png

(我的wxuin竟然是0.估计是出错了吧???)
其中pass_ticket和wap_sid2不是固定的,经常有变化,失效了都需要重新抓包,而其他wxtokenkey,wxuin,devicetype,version等只要微信号不变,登录设备不变都不会改变。

第三部分:微信公众号图文消息的链接组成
微信公众帐号群发的图文消息一般情况下是在微信公众平台上编辑和产生的。
我们先从比较有名的公众号“逻辑思维”的图文消息看看一篇图文消息链接的组成元素:
逻辑思维有一篇每天60秒的文章【罗胖60秒:一个“智慧系统”是什么样的?】,在微信打开通过浏览器查看到链接
http://mp.weixin.qq.com/s?__biz=MjM5NjAxOTU4MA==&mid=3009217237&idx=2&sn=881c0a758a43348e2e7602110862f6ec&chksm=90460ec6a73187d00ebc007b1429609573ca42b9ef1dd74d860b4716f04b63661b15cbee2c6b&mpshare=1&scene=23&srcid=1202m2DVBW8OubvaR1DcXF0a#rd
上面链接中的参数有__biz,mid,idx,sn,chksm,mpshare,scene和srcid
其实主要参数只有__biz,mid,idx和sn四个参数,而这四个参数能唯一确定一篇微信公众平台的图文消息,所以以下链接就可以访问文章
https://mp.weixin.qq.com/s?__biz=MjM5NjAxOTU4MA==&mid=3009217237&idx=2&sn=881c0a758a43348e2e7602110862f6ec
这四个参数的含义是:
__biz可以认为是微信公众平台对外公布的公众帐号的唯一id,而这个__biz参数能用来生成公众帐号的二维码
mid是图文消息id,每篇文章这个消息id都唯一
idx是发布的第几条消息(1就代表是头条位置消息,2代表第二条)
sn是一个随机加密串(对于一篇图文消息是唯一的,如果你想问这个sn的生成规则是什么或者怎么破解,你基本上只能从微信公众平台开发团队才能得到答案)
另外,对于除了__biz之外的三个参数,mid/idx/sn 可以分别写成 appmsgid/itemidx/sign,比如还是之前文章,用如下链接一样可以访问到:
https://mp.weixin.qq.com/s?__biz=MjM5NjAxOTU4MA==&appmsgid=3009217237&itemidx=2&sign=881c0a758a43348e2e7602110862f6ec
其实在早期,只需要__biz, mid和idx三个参数即可确定一篇微信公众平台的图文消息,微信后来增加一个参数sn(sign),这样做的原因是:
微信公众平台的图文消息首先在后台保存为了一篇素材才能发布,而这个素材也会生成一个链接,在早期这个素材的链接就是后来要发布的文章的链接,而从上面这篇文章的链接你能猜出来,只需要改变mid(图文消息id)这个值,比如这篇文章的mid是10000382,对这个数字加上1或者2就极有可能是下一篇图文消息或者素材的链接,这样用户就有可能提前阅读到公众帐号已经写好并保存但还没群发的素材了。
所以分布文章时会加上一个随机生成的参数sn,确保文章无法被知道。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,110评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,443评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,474评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,881评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,902评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,698评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,418评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,332评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,796评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,968评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,110评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,792评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,455评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,003评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,130评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,348评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,047评论 2 355

推荐阅读更多精彩内容