python爬取公众号文章数据库,爬取微信公众号所有文章的请教

废话还是少说直接上代码:

__biz=MzA3ODA5NjgyOA

uin=MjM3ODE4ODcxMg

key=7b81aac53bd2393d5e902e058ff64404320d0d6b983fca250613052da952e7f6dde8016098f3981acafbc9303e06c824a5b57c6263a326a2

f=json

frommsgid=1000000024

count=10

uin=MjM3ODE4ODcxMg==

key=7b81aac53bd2393d5e902e058ff64404320d0d6b983fca250613052da952e7f6dde8016098f3981acafbc9303e06c824a5b57c6263a326a2

pass_ticket=0BQ58qDwcrLcbBzA76wFjC%252F5aaJ1U%252BivLJww1CdAEfAyXVrtTqQ3mQcR7RpbTT2R

wxtoken=

x5=0 HTTP/1.1

目前发现的规律如下:

不同公众号的_biz 不一样

uin 是 user_ID 固定不变

key 值前 16 位不变,算法规律没找到:和公众号无关,但是和时效有关,一个 key 只能有效十几分钟的样子

pass_ticket 目前不变

后面几位一样

目前的核心是找到 key 的生成算法,或者是获取实时跟新的 key

其次是快速找到_biz 每个公众号对应的商业 ID

现在想问的是:大家对于这个 key 生成算法有过了解喵 或者可以实时获取的解决方案也行,其次就是如何快速获取商业 ID

关于这个 key 自己的一点思考, key 有 112 位,发现和 16 32 64 常见加密算法是位数类似的,我发现 key 前十六位是不变的,那么就是找剩下的 96 位的规律。一个 key 可以获取不同公众号的文章列表,当十几分钟过后这个 key 就会发生改变,此时如果访问,则报错返回 no seesion 我思考这剩下的 96 位和 session 有关,而 session 我在抓包的时候发现有一个 sessionID 看了一下 一共是 64 位 还有剩下的 32 位 我怀疑他有一个时间戳 md5 加密 成 32 位拼凑起来。私以为服务器可能是如果用户登录则生成一个 session ID 如果 xx 时间没有接受请求,则更改时间戳,或者每隔 20 分钟(假如说蛤)跟新 session ID 并发送给客户端跟新其 cookie 并同时更新其时间戳 如果 session ID 和数据库中的不匹配则返回 no session 报错信息 如果获取到的加密时间戳和系统当前时间戳相差 20 分钟以上则报错(这个错误我没有试),期待大家能够指正.

any advice will be appreciated, thx in advice.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提数据并存储,以便后续分析或展示。虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓的场景。 虫的工作流程包括以下几个关键步骤: URL收集: 虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获。 请求网页: 虫使用HTTP或其他协议向目标URL发起请求,获网页的HTML内容。这通常通过HTTP请求库实现,如Python中的Requests库。 解析内容: 虫对获的HTML进行解析,提有用的信息。常用的解析工具有正则表达式、XPath、Beautiful Soup等。这些工具帮助虫定位和提目标数据,如文本、图片、链接等。 数据存储: 虫将提的数据存储到数据库、文件或其他存储介质中,以备后续分析或展示。常用的存储形式包括关系型数据库、NoSQL数据库、JSON文件等。 遵守规则: 为避免对网站造成过大负担或触发反虫机制,虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反虫应对: 由于虫的存在,一些网站采了反虫措施,如验证码、IP封锁等。虫工程师需要设计相应的策略来应对这些挑战。 虫在各个领域都有广泛的应用,包括搜索引擎索引、数据挖掘、价格监测、新闻聚合等。然而,使用虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值