示例#1
0
文件: haha.py 项目: wangjian2254/haha
 def get(self):
     username=self.request.get('username')
     userpwd=self.request.get('userpwd')
     jokeid=self.request.get('jokeid')
     website=self.request.get('website')
     joke=NewJoke.get_by_key_name(jokeid)
     msg=''
     if not joke:
         self.response.out.write(u'该条笑话在服务器上已经删除。')
         return
     user=User.get_by_key_name('u'+username)
     if not user:
         self.response.out.write(u'用户不存在。')
         return
     elif user.pwd!=userpwd:
         self.response.out.write(u'用户密码错误。')
         return
     else:
         joke.joke=html_parser.unescape(joke.joke).replace('<br/>','\n')
         if 'sina' in website:
             text=joke.joke
             isSuccess=False
             while text:
                 if sinaWeibo.sendWeibosina(username,user.sinaSecret,user.sinaExpires,text[:90]+sinawebtext):
                     isSuccess=True
                 text=text[90:]
             if isSuccess:
                 msg+=u'新浪微博发送成功。'
             else:
                 msg+=u'新浪微博发送失败。'
         if 'wy' in website:
             text=joke.joke
             isSuccess=False
             while text:
                 if wyWeibo.sendWeibowy(user.wyToken,user.wySecret,text[:90]+wywebtext):
                     isSuccess=True
                 text=text[90:]
             if isSuccess:
                 msg+=u'网易微博发送成功。'
             else:
                 msg+=u'网易微博发送失败。'
         if 'teng' in website:
             text=joke.joke
             isSuccess=False
             while text:
                 if tengWeibo.sendWeiboteng(user.tengToken,user.tengSecret,text[:90]+tengwebtext):
                     isSuccess=True
                 text=text[90:]
             if isSuccess:
                 msg+=u'腾讯微博发送成功。'
             else:
                 msg+=u'腾讯微博发送失败。'
         if msg:
             self.response.out.write(msg)
         else:
             self.response.out.write(u'未发送微博。')
示例#2
0
文件: haha.py 项目: wangjian2254/haha
    def get(self):
        username=self.request.get('username')
        userpwd=self.request.get('userpwd')
#        usernick=self.request.get('usernick')
        text=''
        for s in self.request.query_string.split('&'):
            if 'usernick'==s[0:8] and len(s)>8:
                unquotedPath= urllib.unquote(s[9:])
                try:
                    text = unicode(unquotedPath, 'utf8')
                except:
                    try:
                      text = unicode(unquotedPath, 'gbk')
                    except:
                        text=''
        user=User.get_by_key_name('u'+username)
        if user:
            self.response.out.write(u'用户名已经存在')
            return
        user=User(key_name='u'+username)
        user.pwd=userpwd
        user.nick=text
        user.put()
        self.response.out.write('1')
示例#3
0
  def get(self):
    website=self.request.get('website')
    username=self.request.get('username')
    user=User.get_by_key_name('u'+username)
    msg=u'您开通了'
#    userAccessToken=UserAccessToken().all().filter('username ='******'sina'==website:
        """用户成功登录授权后,会回调此方法,获取access_token,完成授权"""
        # http://mk2.com/?oauth_token=c30fa6d693ae9c23dd0982dae6a1c5f9&oauth_verifier=603896
#        verifier = self.request.get('oauth_verifier', None)
#        if not username:
#            return
#        auth_client = _oauth()
#        # 设置之前保存在session的request_token
#    #    request_token = request.session['oauth_request_token']
#        request_token=memcache.Client().get(username+"_request_token1")
#        if not request_token:
#            return
#        memcache.Client().delete(username+"_request_token1")
#    #    del request.session['oauth_request_token']
#
#        auth_client.set_request_token(request_token.key, request_token.secret)
#        access_token = auth_client.get_access_token(verifier)
        code=self.request.get('code','')
        client = weibo.APIClient(webSetting.xlconsumer_key, webSetting.xlconsumer_secret,webSetting.WEIBOURL+'/login_check?username='******'&data='+str(datetime.now())+'&website=sina')
        r = client.request_access_token(code)
#        logging.info('access token: %s' % json.dumps(r))
        access_token, expires_in, uid = r.access_token, r.expires_in, r.uid
#        client.set_access_token(access_token, expires_in)
#        logging.info('access token: %s' % json.dumps(access_token))
#        u = client.users.show.get(uid=uid)
        # 保存access_token,以后访问只需使用access_token即可
#        userAccessToken.sinaSecret=access_token.secret
#        userAccessToken.sinaToken=access_token.key
#        userAccessToken.sinaExpires=expires_in
#        userAccessToken.sinauserid=uid
#        userAccessToken.sinaisright=True
#        userAccessToken.put()
        # 保存access_token,以后访问只需使用access_token即可
        user.sinaSecret=access_token
        user.sinaExpires=str(expires_in)
        user.put()
#        pam={'key0':'sinaSecret','value0':access_token.secret,'key1':'sinaToken','value1':access_token.key}
#        syncMogu(username,pam)
#        syncWeiboShouQuan(username,'sina')
        msg+=u'新浪'
#        userAccessToken.sinaSecret=access_token.secret
#        userAccessToken.sinaToken=access_token.key
#        userAccessToken.sinauserid=auth_client.user_id
#        userAccessToken.sinaisright=True
#        userAccessToken.put()
#        sinaadd=memcache.Client().get("SinaAdd")
#        if not sinaadd:
#            sinaadd= []
#        sinaadd.append(username)
#        memcache.Client().set("SinaAdd",sinaadd,360000)
    elif 'wy'==website:
#        t = TBlog(weboSetting.wyconsumer_key, weboSetting.wyconsumer_secret)
        request_token=memcache.Client().get(username+"_request_token3")
        if not request_token:
            return
        memcache.Client().delete(username+"_request_token3")
#        t._request_handler.request_token=request_token
#        request_token.get_auth_url()
#        pin=self.request.get('pin', None)
        pin=self.request.get('oauth_token', None)
        s=request_token.get_access_token(pin)
        user.wySecret=s.secret
        user.wyToken=s.key
        user.put()
#        pam={'key0':'wySecret','value0':s.secret,'key1':'wyToken','value1':s.key}
#        syncMogu(username,pam)
#        syncWeiboShouQuan(username,'wy')
        msg+=u'网易'
#        userAccessToken.wySecret=s.secret
#        userAccessToken.wyToken=s.key
#        userAccessToken.wyisright=True
#        userAccessToken.put()
#        wyadd=memcache.Client().get("WyAdd")
#        if not wyadd:
#            wyadd= []
#        wyadd.append(username)
#        memcache.Client().set("WyAdd",wyadd,360000)
    elif 'teng'==website:
        request_token=memcache.Client().get(username+"_request_token4")
        if not request_token:
            return
        memcache.Client().delete(username+"_request_token4")
        verifier = self.request.get('oauth_verifier', None)
        access_token = request_token.get_access_token(verifier)
        user.tengSecret=access_token.secret
        user.tengToken=access_token.key
        user.put()
#        pam={'key0':'qqSecret','value0':access_token.secret,'key1':'qqToken','value1':access_token.key}
#        syncMogu(username,pam)
#        syncWeiboShouQuan(username,'teng')
        msg+=u'腾讯'
#        userAccessToken.qqSecret=access_token.secret
#        userAccessToken.qqToken=access_token.key
#        #userAccessToken.qquserid=auth_client.user_id
#        userAccessToken.qqisright=True
#        userAccessToken.put()
#        qqadd=memcache.Client().get("QQAdd")
#        if not qqadd:
#            qqadd= []
#        qqadd.append(username)
#        memcache.Client().set("QQAdd",qqadd,360000)
    msg+=u'微博。'

    p={'msg':msg.encode('utf-8')}

    return self.redirect(str('joke://jokeweibo/weibo'+'?msg='+urllib.urlencode(p).split('=')[1]+'&website='+website))