Example #1
0
def getFace(uin,faceType):
    """
    获取头像
    """
    url=webqq3config.getURL('get_face_url')
    txdata=urllib.urlencode({"cache":"0",
                             "fid":"0",
                             "type":faceType,
                             "uin":uin,
                             "vfwebqq":SimpleCookieHandler.cookies.get("vfwebqq")})
    try:
        num=random.randint(1,10)
        req=urllib2.Request( url%(num,txdata))
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',webqq3config.getHeader('refer_web3_qq_com') )
        
        handle=urllib2.urlopen(req)
        itype=handle.info().getheader('Content-Type')
        if itype.find("image") ==-1:
            return False
        else:
            fpath=tempPath+str(uin)
            tempFile = file(fpath,'w')
            tempFile.write(handle.read())
            tempFile.close()
            return fpath
        
    except IOError, e:
        print e       
Example #2
0
    def getCheckImg(self, uin, code):
        """
        获取图片验证码
        """

        url = webqq3config.getURL('check_code_p')
        txdata = urllib.urlencode({
            "aid": "1003903",
            "uin": uin,
            "vc_type": code
        })
        try:
            req = urllib2.Request(url % txdata)
            req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
            req.add_header('Connection', 'Keep-Alive')
            req.add_header(
                'Referer',
                webqq3config.getHeader('refer_ui_ptlogin2_qq_com_login'))

            handle = urllib2.urlopen(req)

            result = handle.read()
            Login.imgfile = tempfile.NamedTemporaryFile()
            Login.imgfile.write(result)
            Login.imgfile.seek(0)
            return Login.imgfile.name
        except IOError, e:
            print e
Example #3
0
    def getCheckCode(self, uin):
        """
        获取文字验证码
        """
        url = webqq3config.getURL('check_code')
        txdata = urllib.urlencode({"appid": "1003903", "uin": uin})
        try:
            req = urllib2.Request(url % txdata)
            req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
            req.add_header('Connection', 'Keep-Alive')
            req.add_header(
                'Referer',
                webqq3config.getHeader('refer_ui_ptlogin2_qq_com_login'))

            handle = urllib2.urlopen(req)
            result = handle.read()
            rcode = result[14:15]
            if rcode == '1':  #需要图片验证码
                handle.needImg = True
                code = result[18:55]
                return '1', code
            else:
                code = result[18:22]
                return '0', code
        except IOError, e:
            print e
Example #4
0
def getQunList():
    """
    获取群列表
    """
    url = webqq3config.getURL('group_list')

    import json
    pyobj = {
        "vfwebqq": SimpleCookieHandler.cookies.get("vfwebqq"),
    }

    jsonstr = json.dumps(pyobj, separators=(',', ':'))

    txdata = urllib.urlencode({
        "r": jsonstr,
    })
    try:
        req = urllib2.Request(url, txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',
                       webqq3config.getHeader('refer_d_web2_qq_com_proxy'))

        handle = urllib2.urlopen(req)

        result = handle.read()

        jresult = json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #5
0
def getQunList():
    """
    获取群列表
    """
    url=webqq3config.getURL('group_list')
    
    
    import json
    pyobj={"vfwebqq":SimpleCookieHandler.cookies.get("vfwebqq"),
           }
    
    jsonstr=json.dumps(pyobj,separators=(',',':'))
        
        
    
    txdata=urllib.urlencode({"r":jsonstr,})
    try:
        req=urllib2.Request( url, txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',webqq3config.getHeader('refer_d_web2_qq_com_proxy') )
        
        handle=urllib2.urlopen(req)
        
        result=handle.read()
            
        jresult=json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #6
0
def getOnlineFriends():
    """
    获取在线好友
    """
    url = webqq3config.getURL('oline_friends')
    txdata = urllib.urlencode({
        "clientid":
        SimpleCookieHandler.cookies.get("clientid"),
        "psessionid":
        SimpleCookieHandler.cookies.get("psessionid"),
        "t":
        int(time.time())
    })
    try:
        req = urllib2.Request(url % txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',
                       webqq3config.getHeader('refer_d_web2_qq_com_proxy'))

        handle = urllib2.urlopen(req)

        result = handle.read()

        jresult = json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #7
0
def getFriendList():
    """
    获取好友列表
    """
    url = webqq3config.getURL('friend_list')
    txdata = urllib.urlencode({
        "h":
        "hello",
        "vfwebqq":
        SimpleCookieHandler.cookies.get("vfwebqq")
    })
    try:
        req = urllib2.Request(url, txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',
                       webqq3config.getHeader('refer_d_web2_qq_com_proxy'))

        handle = urllib2.urlopen(req)

        result = handle.read()

        jresult = json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #8
0
def getFriendInfo(uin):
    """
    获取好友信息
    """
    url = webqq3config.getURL('friend_information')
    txdata = urllib.urlencode({
        "verifysession":
        "",
        "code":
        "",
        "tuin":
        uin,
        "vfwebqq":
        SimpleCookieHandler.cookies.get("vfwebqq"),
        "t":
        int(time.time())
    })
    try:
        req = urllib2.Request(url % txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',
                       webqq3config.getHeader('refer_s_web2_qq_com_proxy'))

        handle = urllib2.urlopen(req)
        result = handle.read()

        jresult = json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #9
0
    def loginChannel(self, uin, status):
        """
        正式登录
        """

        #首先添加cookie
        clientid = str(int(random.uniform(0, 99))) + str(
            int(time.time()) % 1000000)

        SimpleCookieHandler.cookies['o_cookie'] = uin
        SimpleCookieHandler.cookies['ptui_loginuin'] = uin
        SimpleCookieHandler.cookies['clientid'] = clientid

        #然后构造json
        import json
        pyobj = {
            "status": "online",
            "ptwebqq": SimpleCookieHandler.cookies.get("ptwebqq"),
            "clientid": clientid
        }

        jsonstr = json.dumps(pyobj, separators=(',', ':'))

        params = urllib.urlencode({"r": jsonstr, "clientid": clientid})

        url = webqq3config.getURL('channel_login')
        try:
            req = urllib2.Request(url, params)
            req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
            req.add_header('Connection', 'Keep-Alive')
            req.add_header('Referer',
                           webqq3config.getHeader('refer_d_web2_qq_com_proxy'))

            handle = urllib2.urlopen(req)
            result = handle.read()

            jresult = json.loads(result)
            SimpleCookieHandler.cookies['psessionid'] = jresult.get(
                'result').get('psessionid')
            SimpleCookieHandler.cookies['vfwebqq'] = jresult.get('result').get(
                'vfwebqq')

            return jresult
        except IOError, e:
            print e
Example #10
0
 def doit():
     try:
         req=urllib2.Request( url%txdata)
         req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
         req.add_header('Connection', 'Keep-Alive')
         req.add_header('Referer',webqq3config.getHeader('refer_s_web2_qq_com_proxy') )
         
         handle=urllib2.urlopen(req)
         
         result=handle.read()
         jresult=json.loads(result)
         
         #while jresult.get("retcode")!=0:
         #    doit()
         return jresult
     except IOError, e:
         print e
         doit()
Example #11
0
 def loginChannel(self,uin,status):
     """
     正式登录
     """
     
     #首先添加cookie
     clientid=str(int(random.uniform(0,99)))+str(int(time.time())%1000000)
     
     SimpleCookieHandler.cookies['o_cookie']=uin
     SimpleCookieHandler.cookies['ptui_loginuin']=uin
     SimpleCookieHandler.cookies['clientid']=clientid
     
     
     
     #然后构造json
     import json
     pyobj={"status":"online",
            "ptwebqq":SimpleCookieHandler.cookies.get("ptwebqq"),
            "clientid":clientid}
     
     jsonstr=json.dumps(pyobj,separators=(',',':'))
     
     
     params=urllib.urlencode({"r":jsonstr,"clientid":clientid})
     
     
     url=webqq3config.getURL('channel_login')
     try:
         req=urllib2.Request( url,params)
         req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
         req.add_header('Connection', 'Keep-Alive')
         req.add_header('Referer',webqq3config.getHeader('refer_d_web2_qq_com_proxy') )
         
         handle=urllib2.urlopen(req)
         result=handle.read()
         
         jresult=json.loads(result)
         SimpleCookieHandler.cookies['psessionid']=jresult.get('result').get('psessionid')
         SimpleCookieHandler.cookies['vfwebqq']=jresult.get('result').get('vfwebqq')
 
         return jresult
     except IOError, e:
         print e
Example #12
0
    def doit():
        try:
            req = urllib2.Request(url % txdata)
            req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
            req.add_header('Connection', 'Keep-Alive')
            req.add_header('Referer',
                           webqq3config.getHeader('refer_s_web2_qq_com_proxy'))

            handle = urllib2.urlopen(req)

            result = handle.read()
            jresult = json.loads(result)

            #while jresult.get("retcode")!=0:
            #    doit()
            return jresult
        except IOError, e:
            print e
            doit()
Example #13
0
def getFriendList():
    """
    获取好友列表
    """
    url=webqq3config.getURL('friend_list')
    txdata=urllib.urlencode({"h": "hello",
                             "vfwebqq":SimpleCookieHandler.cookies.get("vfwebqq")})
    try:
        req=urllib2.Request( url, txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',webqq3config.getHeader('refer_d_web2_qq_com_proxy') )
        
        handle=urllib2.urlopen(req)
        
        result=handle.read()
            
        jresult=json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #14
0
 def getCheckImg(self,uin,code):
     """
     获取图片验证码
     """
     
     url=webqq3config.getURL('check_code_p')
     txdata=urllib.urlencode({"aid":"1003903","uin":uin,"vc_type":code})
     try:
         req=urllib2.Request( url % txdata)
         req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
         req.add_header('Connection', 'Keep-Alive')
         req.add_header('Referer',webqq3config.getHeader('refer_ui_ptlogin2_qq_com_login') )
         
         handle=urllib2.urlopen(req)
         
         result=handle.read()
         Login.imgfile=tempfile.NamedTemporaryFile()
         Login.imgfile.write(result)
         Login.imgfile.seek(0)
         return Login.imgfile.name
     except IOError, e:
         print e
Example #15
0
    def login(self, uin, passwd, code):
        """
        登录
        """
        passwd, code = str(passwd), str(code)

        from md5 import MD5
        qmd5 = MD5()
        passwd = qmd5.md5(qmd5.md5_3(passwd) + code.upper())

        url = webqq3config.getURL('login')
        txdata = urllib.urlencode({
            "u": uin,
            "p": passwd,
            "verifycode": code,
            "webqq_type": "10",
            "remember_uin": "1",
            "login2qq": "1",
            "aid": "1003903",
            "u1":
            "http://web3.qq.com/loginproxy.html?login2qq=1&webqq_type=10",
            "h": "1",
            "ptredirect": "0",
            "ptlang": "2052",
            "from_ui": "1",
            "pttype": "1",
            "dumy": "",
            "fp": "loginerroralert",
            "mibao_css": "m_webqq",
            "action": "2-22-10926"
        })
        try:
            req = urllib2.Request(url % txdata)
            req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
            req.add_header('Connection', 'Keep-Alive')
            #req.add_header('Referer',webqq3config.getHeader('refer_d_web2_qq_com_proxy') )
            req.add_header(
                'Referer',
                'http://ui.ptlogin2.qq.com/cgi-bin/login?target=self&mibao_css=m_webqq&appid=1003903&s_url=http%3A%2F%2Fweb3.qq.com%2Floginproxy.html&f_url=loginerroralert&strong_login=1&login_state=10'
            )

            self.cookies['chkuin'] = uin
            self.cookies['confirmuin'] = uin

            handle = urllib2.urlopen(req)

            result = handle.read()
            codes = result.split("""'""")
            return codes[1], codes[9]
        except IOError, e:
            print e
Example #16
0
 def login(self,uin,passwd,code):
     """
     登录
     """
     passwd,code=str(passwd),str(code)
     
     
     from md5 import MD5
     qmd5=MD5()
     passwd=qmd5.md5(qmd5.md5_3(passwd)+code.upper())
     
     
     
     url=webqq3config.getURL('login')
     txdata=urllib.urlencode({"u":uin,
                             "p":passwd,
                             "verifycode":code,
                             "webqq_type":"10",
                             "remember_uin":"1",
                             "login2qq":"1",
                             "aid":"1003903",
                             "u1":"http://web3.qq.com/loginproxy.html?login2qq=1&webqq_type=10",
                             "h":"1",
                             "ptredirect":"0",
                             "ptlang":"2052",
                             "from_ui":"1",
                             "pttype":"1",
                             "dumy":"",
                             "fp":"loginerroralert",
                             "mibao_css":"m_webqq",
                             "action":"2-22-10926"
                              })
     try:
         req=urllib2.Request( url % txdata)
         req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
         req.add_header('Connection', 'Keep-Alive')
         #req.add_header('Referer',webqq3config.getHeader('refer_d_web2_qq_com_proxy') )
         req.add_header('Referer','http://ui.ptlogin2.qq.com/cgi-bin/login?target=self&mibao_css=m_webqq&appid=1003903&s_url=http%3A%2F%2Fweb3.qq.com%2Floginproxy.html&f_url=loginerroralert&strong_login=1&login_state=10' )
         
         
         self.cookies['chkuin']=uin
         self.cookies['confirmuin']=uin
         
         handle=urllib2.urlopen(req)
         
         result=handle.read()
         codes=result.split("""'""")
         return codes[1],codes[9]
     except IOError, e:
         print e
Example #17
0
def getOnlineFriends():
    """
    获取在线好友
    """
    url=webqq3config.getURL('oline_friends')
    txdata=urllib.urlencode({"clientid":SimpleCookieHandler.cookies.get("clientid"),
                             "psessionid":SimpleCookieHandler.cookies.get("psessionid"),
                             "t":int(time.time())
                        })
    try:
        req=urllib2.Request( url%txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',webqq3config.getHeader('refer_d_web2_qq_com_proxy') )
        
        handle=urllib2.urlopen(req)
        
        result=handle.read()
            
        jresult=json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #18
0
def getFriendInfo(uin):
    """
    获取好友信息
    """
    url=webqq3config.getURL('friend_information')
    txdata=urllib.urlencode({"verifysession":"",
                             "code":"",
                             "tuin":uin,
                             "vfwebqq":SimpleCookieHandler.cookies.get("vfwebqq"),
                             "t":int(time.time())})
    try:
        req=urllib2.Request( url % txdata)
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer',webqq3config.getHeader('refer_s_web2_qq_com_proxy') )
        
        handle=urllib2.urlopen(req)
        result=handle.read()
            
        jresult=json.loads(result)
        return jresult
    except IOError, e:
        print e
Example #19
0
def getFace(uin, faceType):
    """
    获取头像
    """
    url = webqq3config.getURL('get_face_url')
    txdata = urllib.urlencode({
        "cache":
        "0",
        "fid":
        "0",
        "type":
        faceType,
        "uin":
        uin,
        "vfwebqq":
        SimpleCookieHandler.cookies.get("vfwebqq")
    })
    try:
        num = random.randint(1, 10)
        req = urllib2.Request(url % (num, txdata))
        req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
        req.add_header('Connection', 'Keep-Alive')
        req.add_header('Referer', webqq3config.getHeader('refer_web3_qq_com'))

        handle = urllib2.urlopen(req)
        itype = handle.info().getheader('Content-Type')
        if itype.find("image") == -1:
            return False
        else:
            fpath = tempPath + str(uin)
            tempFile = file(fpath, 'w')
            tempFile.write(handle.read())
            tempFile.close()
            return fpath

    except IOError, e:
        print e
Example #20
0
 def getCheckCode(self,uin):
     """
     获取文字验证码
     """
     url=webqq3config.getURL('check_code')
     txdata=urllib.urlencode({"appid":"1003903","uin":uin})
     try:
         req=urllib2.Request( url % txdata)
         req.add_header('User-Agent', webqq3config.getHeader('user-agent'))
         req.add_header('Connection', 'Keep-Alive')
         req.add_header('Referer',webqq3config.getHeader('refer_ui_ptlogin2_qq_com_login') )
         
         handle=urllib2.urlopen(req)
         result=handle.read()
         rcode=result[14:15]
         if rcode=='1':  #需要图片验证码
             handle.needImg=True
             code=result[18:55]
             return '1', code
         else:
             code=result[18:22]
             return '0',code
     except IOError, e:
         print e