怎样用python模拟微信扫码登录_十一、模拟扫码登录微信(用Django简单的布置了下页面)发送接收消息...

本文介绍如何使用Python模拟微信扫码登录的过程,并利用Django框架搭建页面,实现登录后的消息发送与接收。主要涉及长轮询、正则表达式、请求库和BeautifulSoup解析等技术。
摘要由CSDN通过智能技术生成

importreimporttimeimportjsonimportrequestsfrom bs4 importBeautifulSoupfrom django.shortcuts importrender, HttpResponse#Create your views here.

#一些全局变量#当前时间戳

CURRENT_TIME =None#验证码

QCODE =None#图片

PICTURE =None#tip

TIP = 1

#LOGININ cookies#all_cookie_dict = {}#保存cookies

LOGIN_COOLIES_DICT ={}

TICKET_COOKIES_DICT={}

TICKET_DICT={}#用户信息

USER_INIT_DATA ={}deflogin(request):'''获取登录二维码

:param request:

:return:'''

globalQCODEglobalCURRENT_TIME

url= 'https://login.wx.qq.com/jslogin?appid=wx782c26e4c19acffb&redirect_uri=https%3A%2F%2Fwx.qq.com%2Fcgi-bin%2Fmmwebwx-bin%2Fwebwxnewloginpage&fun=new&lang=zh_CN&_={0}'CURRENT_TIME=str(time.time())

q_code_url=url.format(CURRENT_TIME)

response=requests.get(q_code_url)#打印返回值

#window.QRLogin.code = 200; window.QRLogin.uuid = "4c5VeLH00g==";

#print(response.text)

code = re.findall('uuid = "(.*)";', response.text)[0]

QCODE=code#print(code)

return render(request, 'login.html', {'code': code})deflong_polling(request):'''长轮询,有408、201、200三种状态

:param request:

:return:'''

globalTIPglobalPICTUREprint('polling')#默认返回Ajax状态为408

ret = {'status': 408, 'data': None}

base_login_url= 'https://login.wx.qq.com/cgi-bin/mmwebwx-bin/login?loginicon=true&uuid={0}&tip={1}&r=970980966&_={1}'login_url=base_login_url.format(QCODE, TIP, CURRENT_TIME)

respons

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值