• 声明此代码仅供技术交流学习,擅自用于其他,一切后果与本人无关
    目标网址: https://mp.weixin.qq.com/

所谓模拟登陆,就是自己模拟构造请求发送给服务器,然后服务器返回认证的信息过来,当然这个其中的交互过程稍微有点复杂,可能不止一次的交互。
我们这次模拟登陆成功的标志就是拿到登陆后的token和cookie, cookie有过期时间,我稍微测试了下大概有10个小时左右。

效果图

按照惯例首先摆上效果图,证明我这个代码目前是真实可以运行的。
图一:是完整登陆后的过程,打印出来了token 和 cookie, 这是演示代码,实际可以存储起来到redis或者其他地方。

图二: 这是验证tokne和cookie是否有用,由于我的公众号就只发了一遍测试文章,内容啥的都没有,所有拿到的json数据很少,但是总的来说是可以的。

思路

由于这个代码是我很早写的,所以思路就没有图文对照,懒得再去截图演示了,但是上面两个效果图是我写博客的时候又重写运行过一遍的,目前是有效的。

  • 1 首先一般的步骤都是打开Chrome浏览器,打开网址,然后f12 找到 填写账号密码的from表单之类的,但是这个套路针对此次模拟行不通。

因为微信公众平台老是跳转刷新,所以很难找到请求的网址和接口。
好了,分析不了,告辞,文章结束。
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

  • 好吧, 其实我们可以打开网页后用抓包工具看各种请求的接口和跳转情况。
    我们先在浏览器打开网址,然后打开fiddler或者charles 等抓包工具,不会抓包工具的,这里不讲,自己去找找相关资料,安装使用不难,就是有点繁琐。(抓取浏览器接口的时候记得把浏览器上的代理插件去掉,否则抓不到, 如果有代理的话)

我再想想我该写什么了? 好吧没什么可以写的。

  • 简单的说一下运行逻辑。
  • 1 首先是模拟表单发送一个post请求, 注意密码是md5之后的值
  • 2 模拟请求后可能出现验证码,如果有就请求验证码,(验证码url会携带登陆cookie),然后手动输入重新post
  • 3 跳转到扫描二维码界面,这会就有两个逻辑,第一个是账号持有人扫码,第二个是非账号持有人。
  • 3.1账号持有人扫码,扫完就直接登陆确认。
  • 3.2 非账号持有人,扫完后,会继续跳转到账号本人扫码界面(貌似账号本人微信会直接提示,直接确认就行)
  • 4 直接访问主页,获取token,然后把现在自身的cookie保存,模拟登陆到此就完成了。

代码现在上传到我的github上面。
https://github.com/CoderCharm/wechat_subscription
如果对你有帮助,麻烦点下star!!毕竟写代码,写博客都是义务操作。

Python3 微信公众平台模拟登陆 requests模拟请求相关推荐

  1. php如何配置微信公众号环境,微信公众平台开发之配置与请求

    一.配置参数 define('WEIXIN_APPID', 'wxzzzzzzzz'); define('WEIXIN_APPSECRET', 'ouewjdsaudsamkh'); define(' ...

  2. 微信公众请求config php,微信公众平台开发之配置与请求_PHP

    一.配置参数 define('WEIXIN_APPID', 'wxzzzzzzzz'); define('WEIXIN_APPSECRET', 'ouewjdsaudsamkh'); define(' ...

  3. 微信公众平台开发教程第20篇-新手解惑40则

    笔者在CSDN博客频道推出微信公众平台开发教程之后,接触了许多公众平台开发爱好者,也帮助他们解决了许多实际的问题,当然这其中有很多问题都是重复的,因此,笔者将这些问题及解答整理出来,以帮助更多初学者少 ...

  4. [044] 微信公众平台开发教程第20篇-新手解惑40则

    笔者在CSDN博客频道推出微信公众平台开发教程之后,接触了许多公众平台开发爱好者,也帮助他们解决了许多实际的问题,当然这其中有很多问题都是重复的,因此,笔者将这些问题及解答整理出来,以帮助更多初学者少 ...

  5. 微信公众平台消息接口API指南

    下述文档已过期,更加完整及详细的请访问  http://www.cnblogs.com/txw1958/p/wechat-tutorial.html 简介 微信公众平台消息接口为开发者提供了一种新的消 ...

  6. 微信公众平台开发——新增素材

    微信公众平台开发--新增永久素材 请求接口 接口使用(以图片上传为例) 使用Layui写一个前台上传图片的页面 js 使用HttpRequestPostMedia方法 UploadMedia方法 效果 ...

  7. 微信公众平台服务器的官方示例代码,微信公众平台API接口(示例代码)

    简介 微信公众平台消息接口为开发者提供了一种新的消息处理方式.微信公众平台消息接口为开发者提供与用户进行消息交互的能力.对于成功接入消息接口的微信公众账号,当用户发消息给公众号,微信公众平台服务器会使 ...

  8. 微信公众平台API接口开发教程

    简介 微信公众平台消息接口为开发者提供了一种新的消息处理方式.微信公众平台消息接口为开发者提供与用户进行消息交互的能力.对于成功接入消息接口的微信公众账号,当用户发消息给公众号,微信公众平台服务器会使 ...

  9. Java对接微信公众平台详解

    Java对接微信公众平台详解 1.公众平台概述 1.1 公众平台概述 1.2 入门指引 2.对接流程 2.1 接入概述 2.2 填写服务器配置 2.3 接口域名说明 2.4 获取Access toke ...

最新文章

  1. mysql2008 limit,在SQL Server中实现 Limit m, n 的功能
  2. 英语单词 voltage simulation synthesize junction asynchronous mega optimize
  3. C/C++字符串使用整理
  4. PowerPC VxWorks BSP分析(2)--PowerPC汇编
  5. 这个国家太奇怪了!全球最落后的国家之一,却又是世界上最幸福的国家!
  6. web.xml.jsf_使用JSF 2.2功能来开发可滚动,可延迟加载的Ajax数据表
  7. 笨办法学 Python · 续 练习 50:`vi`
  8. 为什么说社区团购进行得如火如荼?
  9. 字节跳动面试官:千峰java培训多少钱
  10. 如何在Ubuntu 18.04上安装OpenCV
  11. System Center 2012 R2 支持的SQL版本
  12. 什么是领域模型(domain model)?贫血模型(anaemic domain model) 和充血模型(rich domain model)有什么区别...
  13. 腾达路由器WISP功能小测试
  14. 菜鸟驿站是什么快递_菜鸟驿站是什么快递(菜鸟驿站和快递点的区别)
  15. 网络安全人员必考的几本证书
  16. html 给word插入页眉和页脚,如何在Word插入页眉和页脚
  17. 计算机术语中cad代表,计算机术语中,CAD表示什么
  18. 绝版 ~ 原来 Python 画画可以这么简单
  19. Uniapp实现小程序获取用户微信信息功能
  20. 程序员博客遭攻击,炸出华为云前员工吐槽自家业务;谷歌宣布推出第二个版本 Git 协议,带来显著的性能提升...

热门文章

  1. 网上书城项目日记(一)
  2. 患者血液管理促进会(SABM)白皮书推荐连续血红蛋白监测
  3. 踩坑记录(21--30)
  4. Java代码实现WORD转PDF
  5. Vue和Uniapp:优缺点比较
  6. 数据分析-------统计学-------假设检验和p值、单侧检验、双侧检验、z统计量、t统计量、第一类错误、第二类错误
  7. 逻辑斯蒂回归原理及其概率计算
  8. cf1204E(div2)E
  9. 磨刀霍霍向猪羊Android第一次
  10. 实验10 防火墙安全应用试验