5
5
import urllib ,urllib2 ,cookielib
6
6
7
7
class TBLogin ():
8
+ """
9
+ 自动登录淘宝
10
+ """
8
11
9
12
user = None
10
13
pwd = None
@@ -82,12 +85,15 @@ def getLoginData(self):
82
85
}
83
86
return login_data
84
87
85
- def checkLoginSucceed (self ):
86
- s = self .request ('http://i.taobao.com' )
87
- print s
88
+ def checkLoginSucceed (self ,source ):
89
+ return source .find ('<div class="mt-edit-userinfo">' ) != - 1
88
90
89
91
def login (self ,postData = None ):
92
+ """
93
+ postData: 需要提交的数据
90
94
95
+ True 登录成功,否则失败。
96
+ """
91
97
if postData is None :
92
98
postData = self .getLoginData ()
93
99
@@ -97,6 +103,7 @@ def login(self,postData = None):
97
103
error = self .checkLoginError (source )
98
104
if error :
99
105
print error
106
+
100
107
if error .find ('为了您的账号安全,请输入验证码。' ) != - 1 \
101
108
or error .find ('验证码错误,请重新输入。' ) != - 1 :
102
109
r = self .__verifyCode .search (source )
@@ -108,16 +115,22 @@ def login(self,postData = None):
108
115
os .system ('verifyCode.jpg' )
109
116
postData ['need_check_code' ] = 'true'
110
117
postData ['TPL_checkcode' ] = raw_input ("please input verifycode:" )
111
- self .login (postData )
118
+ return self .login (postData )
112
119
113
- if error .find ('您输入的密码和账户名不匹配,请重新输入' ) != - 1 :
120
+ elif error .find ('您输入的密码和账户名不匹配,请重新输入' ) != - 1 :
114
121
print '您输入的密码和账户名不匹配,请重新输入'
115
- return
122
+ return False
123
+
124
+ else :
125
+ return False
126
+
116
127
else :
117
- # self.checkLoginSucceed()
118
- print self .request ('http://taojinbi.taobao.com/record/coin_get.htm?spm=a1z01.1000834.0.78.9510b9&tracelog=qzindex005' )
119
-
120
-
128
+ if self .checkLoginSucceed (source ):
129
+ return True
130
+ else :
131
+ print '登录没有错误,但是登录不成功'
132
+ return False
133
+
121
134
def checkLoginError (self ,source ):
122
135
r = self .__commonError .search (source )
123
136
return r .group (1 ) if r else None
@@ -143,8 +156,3 @@ def request(self,url,postData=dict()):
143
156
print info [0 ],":" ,info [1 ]
144
157
return None
145
158
146
- if __name__ == '__main__' :
147
- t = TBLogin ()
148
-
149
- t .pwd = 'autorun123456'
150
- t .login ()
0 commit comments