diff --git a/init/select_ticket_info.py b/init/select_ticket_info.py
index 85a8da0..655f4e5 100644
--- a/init/select_ticket_info.py
+++ b/init/select_ticket_info.py
@@ -170,7 +170,7 @@ class select:
             'normal_passengers']:
             normal_passengers = jsonData['data']['normal_passengers']
             _normal_passenger = [normal_passengers[i] for i in range(len(normal_passengers))if normal_passengers[i]["passenger_name"] in self.ticke_peoples]
-            return _normal_passenger if _normal_passenger else normal_passengers[0]  # 如果配置乘车人没有在账号,则默认返回第一个用户
+            return _normal_passenger if _normal_passenger else [normal_passengers[0]]  # 如果配置乘车人没有在账号,则默认返回第一个用户
         else:
             if 'data' in jsonData and 'exMsg' in jsonData['data'] and jsonData['data']['exMsg']:
                 print(jsonData['data']['exMsg'])
@@ -246,20 +246,21 @@ class select:
         检查用户是否达到订票条件
         :return:
         """
-        check_user_url = self.confUrl["check_user_url"]["req_url"]
-        data = dict(_json_att=None)
-        check_user = self.httpClint.send(check_user_url, data)
-        check_user_flag = check_user['data']['flag']
-        if check_user_flag is True:
-            return True
+        # check_user_url = self.confUrl["check_user_url"]["req_url"]
+        # data = dict(_json_att=None)
+        # check_user = self.httpClint.send(check_user_url, data)
+        # check_user_flag = check_user['data']['flag']
+        is_login = self.call_login(auth=True)
+        if "result_code" in is_login and is_login["result_code"] == 0:
+            self.is_check_user["user_time"] = datetime.datetime.now()
         else:
-            if check_user['messages']:
-                print ('用户检查失败:%s,可能未登录,可能session已经失效' % check_user['messages'][0])
+            if "result_message" in is_login and is_login["result_message"]:
+                print ('用户检查失败:%s,可能未登录,可能session已经失效' % is_login["result_message"])
                 print ('正在尝试重新登录')
                 self.call_login()
                 self.is_check_user["user_time"] = datetime.datetime.now()
             else:
-                print ('用户检查失败: %s,可能未登录,可能session已经失效' % check_user)
+                print ('用户检查失败: %s,可能未登录,可能session已经失效' % is_login)
                 print ('正在尝试重新登录')
                 self.call_login()
                 self.is_check_user["user_time"] = datetime.datetime.now()
@@ -618,23 +619,27 @@ class select:
     #     else:
     #         self.submitOrderRequest()
 
-    def call_login(self):
+    def call_login(self, auth=False):
         """
         登录回调方法
         :return:
         """
         login = GoLogin(self.httpClint, self.confUrl)
-        login.go_login()
+        if auth:
+            return login.auth()
+        else:
+            login.go_login()
 
     def main(self):
         self.call_login()
         from_station, to_station = self.station_table(self.from_station, self.to_station)
         # if self.leftTicketLog(from_station, to_station):
+        self.check_user()
         num = 1
         while 1:
             try:
                 num += 1
-                if "user_time" in self.is_check_user and (datetime.datetime.now() - self.is_check_user["user_time"]).seconds/60 > 10:
+                if "user_time" in self.is_check_user and (datetime.datetime.now() - self.is_check_user["user_time"]).seconds/60 > 5:
                     # 十分钟检查一次用户是否登录
                     self.check_user()
                 time.sleep(self.select_refresh_interval)
diff --git a/myUrllib/httpUtils.py b/myUrllib/httpUtils.py
index 0330e48..0149160 100644
--- a/myUrllib/httpUtils.py
+++ b/myUrllib/httpUtils.py
@@ -77,6 +77,7 @@ class HTTPClient(object):
 
     def send(self, url, data=None, **kwargs):
         """send request to url.If response 200,return response, else return None."""
+        error_data = {"code": 99999, "data": ""}
         if data:
             method = "post"
             self.setHeaders({"Content-Length": "{0}".format(len(data))})
@@ -84,31 +85,34 @@ class HTTPClient(object):
             method = "get"
             self.resetHeaders()
         response = self._s.request(method=method,
+                                   timeout=10,
                                    url=url,
                                    data=data,
                                    **kwargs)
-        # print "url: {0} 返回码: {1}, 返回码type: {2}".format(url, response.status_code, type(response.status_code))
-        # print "response.content" + response.content
         try:
             if not response.content:
                 response = self._s.request(method=method,
+                                           timeout=10,
                                            url=url,
                                            data=data,
                                            **kwargs)
             if response.content:
                 return json.loads(response.content) if method == "post" else response.content
             else:
-                return ""
+                return error_data
+        except requests.exceptions.Timeout as e:
+            print e.message
+            return error_data
         except requests.exceptions.ConnectionError as e:
             print e.message
+            return error_data
         except ValueError as e:
             if e.message == "No JSON object could be decoded":
                 print("12306接口无响应,正在重试")
+                return error_data
             else:
                 print(e.message)
-        except KeyError as e:
-            print(e.message)
-        except TypeError as e:
-            print(e.message)
+                return error_data
         except socket.error as e:
-            print(e.message)
\ No newline at end of file
+            print(e.message)
+            return error_data
\ No newline at end of file
diff --git a/tkcode b/tkcode
index bc670e4..b0cac8e 100644
Binary files a/tkcode and b/tkcode differ