def get(self): loginurl1 = "http://ids2.seu.edu.cn/amserver/UI/Login?goto=http%3A%2F%2Fzccx.seu.edu.cn%2F" runurl = "http://zccx.seu.edu.cn" testurl = "http://zccx.seu.edu.cn/student/queryCheckInfo.jsp" username = '******' password = '******' card_id = self.get_argument('card') client = AsyncHTTPClient() data = { "Login.Token1" : username, "Login.Token2" : password, 'goto' : "http://mynew.seu.edu.cn/loginSuccess.portal", 'gotoOnFail' : "http://mynew.seu.edu.cn/loginFailure.portal" } data1 = { 'IDToken0': '', 'IDToken1':username, 'IDToken2':password, 'IDButton':'Submit', 'goto':'http://zccx.seu.edu.cn/', 'gx_charset':'gb2312' } cookie1 = '' request = HTTPRequest( loginurl1, method='POST', body = urllib.urlencode(data1), follow_redirects=False ) initcookie = '' try: response = yield client.fetch(request) except HTTPError as e: print e.response.code # self.write(e.response.headers) initcookie = e.response.headers['Set-Cookie'] print initcookie init_cookie1 = initcookie.split(';')[4].split(',')[1]#+initcookie.split(';')[0] print init_cookie1 header = { 'Host':'zccx.seu.edu.cn', 'Accept': 'textml,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36', 'Referer':'http://zccx.seu.edu.cn/', 'Connection':'Keep-alive', 'Accept-Encoding': 'gzip, deflate', 'Accept-Language': 'zh-CN,zh;q=0.8', 'Cookie':init_cookie1+';'+cookie1+';'+';amblcookie=02' } request = HTTPRequest( runurl, method='GET', headers = header ) try: response = yield client.fetch(request) print response.headers['Set-Cookie'] cookie1 = response.headers['Set-Cookie'] header['Cookie'] = init_cookie1+';'+cookie1+';'+';amblcookie=02' getpeurl = "http://zccx.seu.edu.cn/SportWeb/gym/gymExercise/gymExercise_query_result_2.jsp?xh=%s"%(card_id) request = HTTPRequest( getpeurl, headers = header, request_timeout=8 ) response = yield client.fetch(request) spider = RunningParser() spider.getRunningTable(response.body) # self.write(response.body) s = json.dumps(spider.table,ensure_ascii=False) self.write(s) except HTTPError as e: print(str(e)) self.write("Time Out") self.finish()