国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - python,Django實現的淘寶客登錄功能示例

python,Django實現的淘寶客登錄功能示例

2021-07-11 00:25輕舞肥羊 Python

這篇文章主要介紹了python,Django實現的淘寶客登錄功能,結合實例形式分析了Django框架基于淘寶接口的登錄功能相關操作技巧,需要的朋友可以參考下

本文實例講述了python,django實現的淘寶客登錄功能。分享給大家供大家參考,具體如下:

在整理python,django資料的時候,發現了這個東西,也許是當初某位網友或者朋友發過來參考或者一起探討修改的東西,現在不記得了,也許taobao的接口都變了也有可能,但總體來說還是有參考價值的,主要是做淘寶客客或者返利網會用到taobao登錄而用的.

參考代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#!/usr/bin/python
#coding:utf-8
import datetime, urllib, base64, random
from hashlib import md5
from django.conf import settings
from django.contrib import auth
from django.contrib.auth.models import user
from django.core.urlresolvers import reverse
from django.http import httpresponseredirect
from django.shortcuts import render
from app.taobao.backends import taobaobackend
from app.taobao.models import user as taobao_user
from app.taobao.forms import useroncechange
from pyapi.taobao.top import request
def authenticated(request, template):
  if request.method == 'post':
    form = useroncechange(request=request, data=request.post)
    if form.is_valid():
      request.user.username = form.cleaned_data['username']
      password = form.cleaned_data.get('password', none)
      if password:
        request.user.set_password(form.cleaned_data)
      request.user.save()
      #更新應用用戶綁定
      tb_user = request.user.taobao.all()[0]
      tb_user.has_bind_user=true
      tb_user.save()
      return httpresponseredirect(reverse('user'))
  top_session = request.get.get('top_session', none)
  top_parameters = request.get.get('top_parameters', none)
  top_sign = str(request.get.get('top_sign', none))
  #解析 top parameters
  if top_parameters:
    back_parameters = base64.decodestring(urllib.unquote(top_parameters))
    infos = dict(k.split("=") for k in back_parameters.split("&"))
    username = infos.get('visitor_nick', none)
    visitor_id = infos.get("visitor_id", none)
    # validate sign 認證返回值中的簽名
    local_sign_str = '%s%s%s%s' % (settings.taobao_app_key,
                    top_parameters,
                    top_session,
                    settings.taobao_app_secret)
    local_sign = base64.encodestring(md5(local_sign_str).digest())
    #注意 base64 encode后,字符串最后會有 \n 符, 因此需要清除才能驗證
    if top_sign == local_sign.strip(): # 清除 \n
      # 創建/返回淘寶賬戶
      tb_user, tb_user_created = taobao_user.objects.get_or_create(id=int(visitor_id),
                     nick=username)
      #建立系統用戶, 用戶名存在則創建隨機數擴展
      if tb_user.user_id is none:
        try:
          user.objects.get(username=username)
          django_user_username = username
          tb_user.has_bind_user = true
        except:
          django_user_username = '%s_%s' % (username, random.randint(1000, 10000))
        django_user, django_user_created = user.objects.get_or_create(username=django_user_username)
        if django_user_created:
          django_user.set_password(visitor_id)
          django_user.save()
        tb_user.user = django_user
      # 保存返回的信息:過期時間 token ts等
      tb_user.expires_in = datetime.datetime.now() + datetime.timedelta(seconds=int(infos.get("expires_in", 0)))
      tb_user.ts = infos.get("ts", '')
      tb_user.refresh_token = infos.get("refresh_token", '')
      tb_user.save()
      # update user profile in taobao auth backend
      user = auth.authenticate(id=tb_user.id, nick=tb_user.nick)
      if user:
        auth.login(request, user)
        #如果應用賬戶沒有綁定系統用戶,則用戶第一次時可以修改用戶名
        if not tb_user.has_bind_user:
          form = useroncechange(request=request,
                     initial={'username':tb_user.user.username,
                          'password':tb_user.id})
          return render(request, template, locals())
  return httpresponseredirect(settings.taobao_auth_url)

希望本文所述對大家基于django框架的python程序設計有所幫助。

原文鏈接:http://www.yihaomen.com/article/python/531.htm

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品久久av | 99久久国产露脸国语对白 | 国产视频一区二区 | 国产一区二区三区在线视频观看 | 99久久99久久久精品色圆 | 国产毛片久久久久 | 亚洲激情在线播放 | 欧美日韩一级视频 | 成人av在线网站 | 国产精品久久久久久久久久99 | 国产精品久久99 | 99久久免费看视频 | 成人综合激情 | 精品日韩 | 欧美精品一区二区三区在线四季 | 性视频网站免费 | 亚洲va欧美va人人爽成人影院 | 国产成人精品综合 | 色站综合| 国产黄色一级毛片 | 欧美日韩激情 | 天天操天天碰 | 综合久 | 成人在线一级片 | 激情婷婷丁香 | 日本不卡高字幕在线2019 | 日韩超级大片免费看国产国产播放器 | 欧美亚洲在线 | 亚洲欧美日韩国产综合 | 亚洲欧洲综合 | 欧美操穴 | 精品国产精品一区二区夜夜嗨 | 男人久久久 | 精品一区二区久久久久黄大片 | 国产精品毛片一区二区 | 国产精品三级久久久久久电影 | 午夜视频在线看 | 成人在线网站 | 美女一级毛片 | 久久国产精品久久精品 | av网站在线播放 |