关于web微信root-二维码的实时更新

前一段时间,学习了有关django和requests的一些知识,就想再次理解http请求和requests模块的应用,所以写了一个web卫星root

下面记录一下我的学习经历:

#####1:分析如何获取web微信的二维码
进入web微信官网

这里的redirct....是重定向,不是必须的,所以可以进行删除,最后zh-CN&_=后是一个时间戳,所以我们可以对url进行构造

'https://login.wx.qq.com/jslogin?appid=wx782c26e4c19acffb&fun=new&lang=zh_CN&_=%s'这里%s是占位符,因此我们可以用requests模块模拟GET请求来获取信息,
CTIME = time.time()
responses = requests.get(
    url='https://login.wx.qq.com/jslogin?appid=wx782c26e4c19acffb&fun=new&lang=zh_CN&_=%s' % CTIME
)

接着看这个请求的返回值

这里返回了一个码,接着看网页中的二维码的img的url

这里的img的src中最后跟了一个码,一比较会发现是相同的所以可以在html的login.html中构造img的src属性

先通过requests

responses = requests.get(
    url='https://login.wx.qq.com/jslogin?appid=wx782c26e4c19acffb&fun=new&lang=zh_CN&_=%s' % CTIME
)

在用re正则来提取qcode

v = re.findall('uuid = "(.*)";', responses.text)
global QCODE
QCODE = v[0]
return render(request, 'login.html', {'qcode': QCODE})

最后将返回qcode显示在login.hmtl网页上

<img style="height: 340px;width: 340px;" id='qrcode' src="https://login.weixin.qq.com/qrcode/{{ qcode }}">

这样就实现了二维码的更新

这里有完整的源码https://github.com/LelandYan/weixinroot

欢迎指教

猜你喜欢

转载自blog.csdn.net/qq_41682681/article/details/82413790
今日推荐