Example #1
0
 def get_current_user(self):
     openid = get_cleaned_query_data(self, ['openid'], blank=True)['openid']
     if openid:
         user = User.get_by_openid(openid)
     else:
         user = None
     return user
Example #2
0
def response_msg_text(request):
    xmlstr = ET.fromstring(request)
    toUserName = xmlstr.find('ToUserName').text
    fromUserName = xmlstr.find('FromUserName').text
    content = xmlstr.find('Content').text
    inputParams = content.split(' ')
    lenParams = len(inputParams)
    CommentDB.add_comment(fromUserName, content)
    # 进行绑定操作,其他操作都需要绑定
    if inputParams[0] == '@':
        res = '感谢您的留言!'
        return compound_msg_text(toUserName, fromUserName, res)
    elif inputParams[0] in ['成绩', '成绩查询']:
        if User.get_by_openid(fromUserName):
            out = weixin_return_template.RT_score % (
                fromUserName, toUserName, str(int(time.time())), fromUserName)
        else:
            out = weixin_return_template.RT_register % (
                fromUserName, toUserName, str(int(time.time())), fromUserName)
        return out
    elif inputParams[0] in ['绑定', '绑定成绩']:
        out = weixin_return_template.RT_register % (
            fromUserName, toUserName, str(int(time.time())), fromUserName)
        return out
    res = '感谢您的留言!现在可以回复[绑定]'
    return compound_msg_text(toUserName, fromUserName, res)
Example #3
0
 def post(self, *args, **kwargs):
     post_data = get_cleaned_post_data(self, ['username', 'password'])
     #try:
     #    post_data=get_cleaned_post_data(self,['username','password'])
     #except RequestArgumentError as e:
     #    self.write(json_result(e.code,e.msg))
     #    return
     user = User.auth(post_data['username'], post_data['password'])
     if user:
         self.set_secure_cookie('uuid', user.username)
         result = json_result(0, 'login success!')
         self.redirect('/')
     else:
         result = json_result(-1, 'login failed!')
         self.redirect('/login')
 def post(self, *args, **kwargs):
     post_data=get_cleaned_post_data(self,['username','password'])
     #try:
     #    post_data=get_cleaned_post_data(self,['username','password'])
     #except RequestArgumentError as e:
     #    self.write(json_result(e.code,e.msg))
     #    return
     user=User.auth(post_data['username'],post_data['password'])
     if user:
         self.set_secure_cookie('uuid',user.username)
         result=json_result(0,'login success!')
         self.redirect('/')
     else:
         result=json_result(-1,'login failed!')
         self.redirect('/login')
Example #5
0
def test_user():
    user=User.get_by_username('admin')
    if user:
        user.delete_instance()
        print('already exist <admin>,so delete it!')
    else:
        print('<admin> not exist')
    user=User.new('admin','admin','admin')
    print('new user <admin:admin>',user)

    user.set_password('root')
    print('change <admin> password to <root>')

    if User.auth('admin','admin'):
        print('auth success!')
    else:
        print('auth failed!')


    if User.exist('admin'):
        print('admin exist')
    else:
        print('admin not exist')
    print('User count ',User.count())
Example #6
0
def response_msg_click(request):
    xmlstr = ET.fromstring(request)
    toUserName = xmlstr.find('ToUserName').text
    fromUserName = xmlstr.find('FromUserName').text
    eventKey = xmlstr.find('EventKey').text
    if eventKey == 'mystudy':
        if User.get_by_openid(fromUserName):
            out = weixin_return_template.RT_score % (
                fromUserName, toUserName, str(int(time.time())), fromUserName)
        else:
            out = weixin_return_template.RT_register % (
                fromUserName, toUserName, str(int(time.time())), fromUserName)
        return out

    returncontent = '/:heart  其他暂时都不可用.'
    return compound_msg_text(toUserName, fromUserName, returncontent)
Example #7
0
    def post_old(self, *args, **kwargs):
        post_data = get_cleaned_post_data(self, ['stuid', 'passwd', 'stutype'])
        #stuid = '2012241004'
        stuid = post_data['stuid']
        #passwd = 'qwaszx'
        passwd = post_data['passwd']
        stutype = post_data['stutype']
        openid = get_cleaned_query_data(self, ['openid'])['openid']

        data = {
            'Login.Token1': stuid,
            'Login.Token2': passwd,
        }
        response = requests.post(
            'http://myportal.sxu.edu.cn/userPasswordValidate.portal',
            data=data,
            headers={
                'Host': 'myportal.sxu.edu.cn',
                'Content-Type': 'application/x-www-form-urlencoded'
            },
            #proxies = {'http': 'http://127.0.0.1:8080'}
        )
        if 'handleLoginSuccessed' not in response.text:
            self.write(json_result(1, '用户名密码验证失败'))
            return
        iPlanetDirectoryPro = response.cookies.get('iPlanetDirectoryPro')
        response = requests.get(
            'http://stuach.sxu.edu.cn/student/caslogin.asp',
            allow_redirects=False,
            headers={
                'Host': 'stuach.sxu.edu.cn',
                'User-Agent': ''
            },
            cookies={'iPlanetDirectoryPro': iPlanetDirectoryPro},
            #proxies = {'http': 'http://127.0.0.1:8080'}
        )

        ASPSESSIONIDACRRADAD = response.cookies.get('ASPSESSIONIDACRRADAD')
        response = requests.get(
            'http://stuach.sxu.edu.cn/student/studentinfo.asp',
            headers={
                'Host': 'stuach.sxu.edu.cn',
                'User-Agent': ''
            },
            cookies={'ASPSESSIONIDACRRADAD': ASPSESSIONIDACRRADAD},
            #proxies = {'http': 'http://127.0.0.1:8080'}
        )
        stuname, stumajor = find_stu_info_old(
            response.content.decode('gb2312', 'ignore'))
        temp_user = User.get_by_openid(openid)
        if temp_user:
            temp_user.openid = temp_user.openid + '_d'
            temp_user.save()
        User.new(stuid, stuname, stumajor, passwd, stutype, openid, 'test')
        self.write(
            json_result(0, {
                'stuid': stuid,
                'stuname': stuname,
                'stumajor': stumajor
            }))
        return
Example #8
0
    def post_new(self, *args, **kwargs):
        #stuid = self.get_body_argument('stuid')
        #passwd = self.get_body_argument('passwd')
        post_data = get_cleaned_post_data(
            self, ['stuid', 'passwd', 'captcha', 'stutype'])
        captcha = post_data['captcha']
        #stuid = '201502401037'
        stuid = post_data['stuid']
        #passwd = '622307'
        passwd = post_data['passwd']
        stutype = post_data['stutype']
        openid = get_cleaned_query_data(self, ['openid'])['openid']
        passwd_encrpyt, captcha_encrpt = get_encrypt_code(
            stuid, passwd, captcha)
        cookies = {'ASP.NET_SessionId': self.get_cookie('ASP.NET_SessionId')}
        data = {
            '__VIEWSTATE': self.get_cookie('ViewState'),
            'pcInfo':
            'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0Intel Mac OS X 10.115.0 (Macintosh) SN:NULL',
            'txt_asmcdefsddsd': stuid,
            # 密码密文
            'dsdsdsdsdxcxdfgfg': passwd_encrpyt,
            # 验证码
            'fgfggfdgtyuuyyuuckjg': captcha_encrpt,
            'Sel_Type': 'STU',
            'typeName': '学生'
        }

        response = requests.post(
            'http://bkjw.sxu.edu.cn/_data/login.aspx',
            data=data,
            cookies=cookies,
            headers={
                'Host': 'bkjw.sxu.edu.cn',
                'Referer': 'http://bkjw.sxu.edu.cn/_data/login.aspx'
            },
            #proxies = {'http': 'http://127.0.0.1:8080'}
        )
        if '帐号或密码不正确' in response.text:
            self.write(json_result(1, '账号或密码不正确'))
            return
        elif '验证码错误' in response.text:
            self.write(json_result(1, '验证码错误'))
            return
        elif '权限' not in response.text:
            self.write(json_result(1, '未知错误'))
            return

        response = requests.get(
            'http://bkjw.sxu.edu.cn/xsxj/Stu_MyInfo_RPT.aspx',
            cookies=cookies,
            headers={
                'Host': 'bkjw.sxu.edu.cn',
                'Referer': 'http://bkjw.sxu.edu.cn/xsxj/Stu_MyInfo.aspx'
            },
            #proxies = {'http': 'http://127.0.0.1:8080'}
        )

        stuid, stuname, stumajor = get_stu_info(response.text)
        temp_user = User.get_by_openid(openid)
        if temp_user:
            temp_user.openid = temp_user.openid + '_d'
            temp_user.save()
        User.new(stuid, stuname, stumajor, passwd, stutype, openid, 'test')
        self.write(
            json_result(0, {
                'stuid': stuid,
                'stuname': stuname,
                'stumajor': stumajor
            }))
        return
Example #9
0
 def get_current_user(self):
     username = self.get_secure_cookie('uuid')
     if not username:
         return None
     user = User.get_by_username(username)
     return user
 def get_current_user(self):
     username = self.get_secure_cookie('uuid')
     if not username:
         return None
     user=User.get_by_username(username)
     return user