def show_qr_image(self):
self.logger.debug('begin to show qr image')
url = 'https://qrlogin.taobao.com/qrcodelogin/generateQRCode4Login.do?from=alimama&_ksTS=%s_30&callback=jsonp31' % int(
time.time() * 1000)
# get qr image
headers = {
'method': 'GET',
'authority': 'qrlogin.taobao.com',
'scheme': 'https',
'path': '/qrcodelogin/generateQRCode4Login.do?%s' % url.split('generateQRCode4Login.do?')[-1],
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36',
'accept': '*/*',
'referer': 'https://login.taobao.com/member/login.jhtml?style=mini&newMini2=true&from=alimama&redirectURL=http%3A%2F%2Flogin.taobao.com%2Fmember%2Ftaobaoke%2Flogin.htm%3Fis_login%3d1&full_redirect=true&disableQuickLogin=true',
'accept-encoding': 'gzip, deflate, sdch, br',
'accept-language': 'zh-CN,zh;q=0.8',
}
res = self.get_url(url, headers=headers)
rj = json.loads(res.text.replace('(function(){jsonp31(', '').replace(');})();', ''))
lg_token = rj['lgToken']
url = 'https:%s' % rj['url']
headers = {
'method': 'GET',
'authority': 'img.alicdn.com',
'scheme': 'https',
'path': '/tfscom/%s' % url.split('tfscom/')[-1],
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36',
'accept': 'image/webp,image/*,*/*;q=0.8',
'referer': 'https://login.taobao.com/member/login.jhtml?style=mini&newMini2=true&from=alimama&redirectURL=http%3A%2F%2Flogin.taobao.com%2Fmember%2Ftaobaoke%2Flogin.htm%3Fis_login%3d1&full_redirect=true&disableQuickLogin=true',
'accept-encoding': 'gzip, deflate, sdch, br',
'accept-language': 'zh,en-US;q=0.8,en;q=0.6,zh-CN;q=0.4,zh-TW;q=0.2',
}
res = self.get_url(url, headers=headers)
qrimg = BytesIO(res.content)
sysstr = platform.system()
if (sysstr == "Windows"):
# windows?????????????
img = Image.open(qrimg)
img.show()
elif (sysstr == "Linux") or (sysstr == "Darwin"):
# ??url
import zbarlight
img = Image.open(qrimg)
codes = zbarlight.scan_codes('qrcode', img)
qr_url = codes[0]
# ??pyqrcode????????linux????
pyqrcode_url = pyqrcode.create(qr_url)
print (pyqrcode_url.terminal())
self.logger.debug(u"??????????")
return lg_token
# do login
评论列表
文章目录