使用到的技术点: 安卓端使用xposed模拟操作+服务端数据采集使用网上开源的代理项目proxy github地址: https://github.com/monkeyWie/proxyee/

本文实现的基本原理为安卓端通过xposed操作微信打开文章的url链接, 设置代理服务器, 并通过代理拿到相应的阅读数.

1: 手机上下载https代理证书, 并安装到手机网络中

2: 本文使用的微信版本为6.6.6(已经比较老的版本了, 腾讯已经不让新用户登录该版本, 因为本人的代码基于此版本, 所以不得不使用此版本啊). 首先上xposed代码, 基础代码就不说了, 如何hook微信app等大家绕道百度一下吧.

该方法作用为微信自动打开文章url链接

public static void scan(String url, Integer paramInt1, Integer paramInt2, Integer paramInt3) throws Exception {
    Object[] arrayOfObject = new Object[3];
    arrayOfObject[0] = url;
    arrayOfObject[1] = Integer.valueOf(paramInt2);
    arrayOfObject[2] = Integer.valueOf(paramInt3);

if (url.indexOf(" ") > -1){
        url = url.replaceAll(" ", "%20");
    }
    if (WsettingsConstant.isVersion666()) {
        Object quj = MyXposedHelpers.findClass("com.tencent.mm.plugin.scanner.util.e", MainHook.getLocalClassLoader()).newInstance();
        MyXposedHelpers.callMethod(quj, "a", WechatDataHook.LauncherUI, url, paramInt1, paramInt2, paramInt3, null, null);
    }else if (WsettingsConstant.isVersion706()){
        Object quj = MyXposedHelpers.findClass("com.tencent.mm.plugin.scanner.util.f", MainHook.getLocalClassLoader()).newInstance();
        MyXposedHelpers.callMethod(quj, "a", WechatDataHook.LauncherUI, url, paramInt1, paramInt2, paramInt3, null, null);
    }
}

这里做了6.6.6和7.0.6两个版本的兼容

MyXposedHelpers这些类是我自行封装了一层xposed, 本人已经做到了定制xposed(自行下载xposed源码, 重新编译), 可以防止微信检测xposed而封号

3: 下一步为服务端的逻辑, 代理程序代码就不上了, 直接上微信的阅读数链接及数据吧

阅读数链接: https://mp.weixin.qq.com/mp/getappmsgext?f=json&mock=&uin=XXX
数据格式: {"advertisement_info":[],"appmsgstat":{"show":true,"is_login":true,"liked":false,"read_num":1230,"like_num":2,"ret":0,"real_read_num":0,"version":1,"prompted":1,"like_disabled":false,"style":1,"video_pv":0,"video_uv":0,"friend_like_num":0},"comment_enabled":1,"reward_head_imgs":[],"only_fans_can_comment":true,"comment_count":0,"is_fans":1,"nick_name":"xxx","logo_url":"xxx","friend_comment_enabled":1,"base_resp":{"wxtoken":777},"more_read_list":[],"friend_subscribe_count":0,"related_tag_article":[],"original_article_count":0,"video_share_page_tag":[],"related_tag_video":[],"only_fans_days_can_comment":false,"appmsg_album_videos":[],"test_flag":0}
read_num: 阅读数
read_num: 在看
read_num: 是否允许评论
评论链接: https://mp.weixin.qq.com /mp/appmsg_comment?action=getcomment&scene=0&appmsgid=XXXX
数据格式: {"base_resp":{"ret":0,"errmsg":"ok"},"enabled":1,"is_fans":0,"nick_name":"xxx","logo_url":"xxx","my_comment":[],"elected_comment":[],"friend_comment":[],"elected_comment_total_cnt":0,"only_fans_can_comment":false,"only_fans_days_can_comment":false}
本文的方法可以大批量采集, 量大直接上设备上号就能解决问题.
中间踩过很多坑, 比如如何规避个号被封, 如何降级安装微信等等,任务间的协同处理这些细节本文都略过了, 感兴趣大家可以留言交流交流.
后续文章讲继续出主动查询公众号历史文章, 以及hook公众号文章推送数据

微信点赞数据xpsoed+代理抓取相关推荐

  1. 微信PC端全局代理抓不到数据包的问题

    微信PC端全局代理抓不到数据包的问题 1.问题 之前抓取微信公众号.小程序数据包一直使用模拟器.手机配置代理.偶然发现微信PC端超级方便,配置了全局代理,Burp也配置好了,结果只能抓取到微信公众号数 ...

  2. python—简单数据抓取三(简单IP地址代理、利用蘑菇代理实现IP地址代理刷新本地ip地址、利用蘑菇代理实现IP地址代理抓取安居客信息并实现多线程)

    学习目标: python学习二十三 -数据抓取三. 学习内容: 1.简单IP地址代理 2.利用蘑菇代理实现IP地址代理刷新本地ip地址 3.利用蘑菇代理实现IP地址代理抓取安居客信息并实现多线程 1. ...

  3. 开箱即用的高匿代理抓取工具

    golang-proxy v3.0 golang-proxy是一个开箱即用的高匿代理抓取工具, 它是语言无关的 项目地址: https://github.com/storyicon/golang-pr ...

  4. 微信公众号历史文章抓取

    微信公众号历史文章抓取 目录结构 WechatSpider │ README.md │ chromedriver.exe │ main.py │ gzhspider.py │ requirements ...

  5. golang-proxy 具有性能评估功能的高性能免费高匿代理抓取

    Golang-Proxy 项目地址: https://github.com/storyicon/golang-proxy Golang-Proxy – 简单高效的免费代理抓取工具通过抓取网络上公开的免 ...

  6. uni-app云开发的网盘助手微信小程序源码抓取网盘资源引流好助手

    uni-app云开发的网盘助手微信小程序源码抓取网盘资源引流好助手 这是一款uni-app开发的一款网盘小助手小程序源码 该源码主要用于用户输入关键词然后全网抓取百度网盘资源内容 另外呢该小程序还可以 ...

  7. 给iPhone手机设置BurpSuite代理抓取手机HTTP/HTTPs流量

    iPhone设置BurpSuite代理 给iPhone手机设置BurpSuite代理抓取手机HTTP/HTTPs流量 1. Burpsuite设置代理 在burpsuite中添加代理ip和端口,ip为 ...

  8. JAVA+网络数据包的抓取与分析实验

    一.实验目的 熟悉TC P/IP数据包的结构. 掌握Wireshark的使用方法. 能够利用JNet Pcap编程实现数据包的抓取与分析. 二.实验准备 1.通过抓包,可以进行网络故障分析.流量监控. ...

  9. python通过代理访问网页_Python使用PyCurl通过SOCK5代理抓取网页 - Python - 服务器之家...

    Python使用PyCurl通过SOCK5代理抓取网页 发布时间:2013-10-09

最新文章

  1. ASCII、Unicode、GBK、UTF-8之间的关系
  2. 【DSP开发】【VS开发】YUV与RGB格式转换
  3. shell编程之条件语句(文件测试,test命令,字符串和逻辑测试,if单支语句,if双支语句,if多支语句,case命令,用if写跑步小实验)
  4. 走向REST:将Tomcat与Spring和JAX-RS嵌入(Apache CXF)
  5. abstract类_【Java】类的结构 - Nemo
  6. dj鲜生-31-用户中心-功能需求分析
  7. idea2020.1使用Lombok注解,点击运行项目提示找不到get,set方法?
  8. 数据结构和算法——八种常用的排序算法------基数排序的优化(队列实现)
  9. html地图导航代码例子,js 实现百度地图导航例子
  10. IDEA修改运行内存
  11. redis多实例常见部署方法和使用
  12. 算法:最长公共子序列(输出所有最长公共子序列)
  13. 一个 epoll 连接句柄定时管理器
  14. 小鹿妹眼中的三亚。告诉你怎么玩三亚
  15. Win32汇编语言基础(1)
  16. Android偷偷进了PC村,Google是无心插柳还是扮猪吃虎?
  17. 360WIFI2无线网卡移植 -MT7601U移植
  18. java电商项目_Java电商项目总结(二)
  19. SparkStreaming 实时计算 广告点击流量实时统计 需求 技术方案数据库设计
  20. JPEG图像压缩原理与DCT离散余弦变换

热门文章

  1. 澳门美团跨多应用测试代码一键生成案例分享
  2. 有没有免费的文字转语音的软件
  3. java 秒杀代码_Java秒杀系统实战系列~商品秒杀代码实战
  4. 【HBase——陌陌海量存储案例】2. HBase表结构设计(中)
  5. MATLAB非线性可视化(引3)多摆模型
  6. LCASE() 函数
  7. Google Chrome浏览器的Cookies文件找不到问题
  8. H3C 端口安全技术
  9. spring-boot系列8:集成redis
  10. If……else if的多重判断