获取微信文章点赞数和阅读数

第一步登录微信网页版

然后在聊天框里面发送一个文章链接

用浏览器f12查看连接
你就会看到类似的链接
https://wx2.qq.com/cgi-bin/mmweb ... 6aea0261f14c2261851
skey后面的值就是你用户值
每个用户都不一样

接着url转码文章链接


接着你把上面那个链接打开,模拟他头部(重点)

"http://wx2.qq.com/cgi-bin/mmwebwx-bin/webwxcheckurl?requrl="+(url转码后的文章链接)+用户值(skey=%40crypt_e832871e_1193800dac1ad81f1fae104b3e077013&deviceid=e991246292367578&pass_ticket=undefined&opcode=2&scene=1&username=@a552a758c212933088e10e1e33387e47ddea986f1d8c16aea0261f14c2261851)

接着模拟ua,下面这个是值(重点)
Mozilla/5.0 (iPhone; CPU iPhone OS 7\_1\_2 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Mobile/11D257 MicroMessenger/5.3.1like Mac OS X) AppleWebKit/600.1.3 (KHTML, like Gecko) Version/8.0 Mobile/12A4345d Safari/600.1.4

就会返回一个带key的文章页面

接着抓取下面这些值,下面是正则
        preg_match("/var uin = \"(.*?)\"/is",$tmpInfo,$uin);
        preg_match("/var key = \"(.*?)\"/is",$tmpInfo,$key);
        preg_match("/var pass_ticket = \"(.*?)\"/is",$tmpInfo,$pass_ticket);
        preg_match("/var biz = \"(.*?)\"/is",$tmpInfo,$biz);
        preg_match("/var mid = \"(.*?)\"/is",$tmpInfo,$mid);
        preg_match("/var sn = \"(.*?)\"/is",$tmpInfo,$sn);
        preg_match("/var scene = (.*?);/is",$tmpInfo,$scene);
        preg_match("/var ct = \"(.*?)\"/is",$tmpInfo,$ct);
        preg_match("/var devicetype = \"(.*?)\"/is",$tmpInfo,$devicetype);
        preg_match("/var version   = \"(.*?)\";/is",$tmpInfo,$version);
        preg_match("/var idx = \"(.*?)\"/is",$tmpInfo,$idx);
        
$url="http://mp.weixin.qq.com/mp/getappmsgext?__biz=".$biz[1]."&mid=".$mid[1]."&sn=".$sn[1]."&idx=".$idx[1]."&scene=".$scene[1]."&title=".'"'.'"'."&ct=".$ct[1]."&devicetype=".$devicetype[1]."&version=".$version[1]."&f=json&r=0.18679807840690843&is_need_ad=1&comment_id=0&is_need_reward=0&both_ad=1&reward_uin_count=0&uin=".$uin[1]."&key=".$key[1]."&pass_ticket=".$pass_ticket[1]."&x5=0";
最后你就会得到这个链接,你打开这个链接就可以获取到点赞数和阅读数

用程序获取要模拟ua
Mozilla/5.0 (iPhone; CPU iPhone OS 7\_1\_2 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Mobile/11D257 MicroMessenger/5.3.1like Mac OS X) AppleWebKit/600.1.3 (KHTML, like Gecko) Version/8.0 Mobile/12A4345d Safari/600.1.4

上面的运行条件是

1.保持微信网页版登录,如果重新登录就要改,模拟头部的cookie,上面重点括号那个

2.你不能太快,快了会退出你的账号,或者封号(几个小时,只封网页版),频率你看着办,大批量就要多个账号来,一个浏览器就可以登录一个微信账号

 http://www.weixin.com/forum.php?mod=viewthread&tid=5184

 

 

 

 //.header("Accept-Encoding", "gzip")

当返回乱码压缩数据时,那是因为设置了Accept-Encoding gzip

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
根据提供的引用内容,我们可以得知微信公众号的阅读数是通过抓取文章的url链接来获取的。因此,我们可以使用Python爬虫来实现这个功能。具体步骤如下: 1. 首先需要安装requests和BeautifulSoup库,可以使用以下命令进行安装: ```shell pip install requests pip install beautifulsoup4 ``` 2. 接着,我们需要获取微信公众号文章的url链接。可以通过在微信公众号平台上手动获取,或者使用Python爬虫自动获取。 3. 获取文章的url链接后,我们可以使用requests库发送GET请求获取文章的HTML源代码。 4. 使用BeautifulSoup库解析HTML源代码,找到包含阅读数的标签,并提取出阅读数。 5. 最后,将提取出的阅读数进行输出即可。 下面是一个示例代码,可以获取指定微信公众号最新一篇文章阅读数: ```python import requests from bs4 import BeautifulSoup # 公众号名称 name = '公众号名称' # 公众号文章页数 page = 1 # 构造请求头 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} # 获取指定公众号最新一篇文章的url链接 url = 'https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=' + biz + '&scene=124&uin=&key=&devicetype=Windows+10&version=62080079&lang=zh_CN&a8scene=0&fontgear=2' # 发送GET请求获取HTML源代码 response = requests.get(url, headers=headers) html = response.text # 使用BeautifulSoup解析HTML源代码 soup = BeautifulSoup(html, 'html.parser') read_num = soup.find('span', {'class': 'read_num'}).get_text() # 输出阅读数 print('最新一篇文章阅读数为:' + read_num) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值