# -*- coding: utf-8 -*- """ Created on Tue Apr 24 12:16:18 2018 @author: 13769 """ import requests import http.cookiejar as cookielib headers = { 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:53.0) Gecko/20100101 Firefox/53.0', 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language':'en-US,en;q=0.5', 'Accept-Encoding':'gzip, deflate', 'Content_Type':'application/x-www-form-urlencoded', # 'Content-length':'5523', #'Cookie':'name=value; ASP.NET_SessionId=hgyga345qcutdv55rejc3x45; ASP.NET_SessionId_NS_Sig=oenCV6mdwWlp9VG_', 'Connection':'keep-alive', 'Upgrade-Insecure-Requests':'1', } session = requests.session() # 实例化一个session用于持续化访问. def login(username,password,url): global session load_cookiejar = cookielib.LWPCookieJar() #实例化一个cookieslib 用于登陆 储存cookies信息. try: # 用于登陆储存好的 cookies 信息 如果没有的话就未能加载. load_cookiejar.load("cookies"+'.txt', ignore_discard=True, ignore_expires=True) load_cookies = requests.utils.dict_from_cookiejar(load_cookiejar) session.cookies = requests.utils.cookiejar_from_dict(load_cookies) except: print("Cookie 未能加载") # 再次登陆然后储存cookie信息 content = { "username":username, "password":password, "cksave":"0", "login":"Login", } session.post(url,data=content,headers = headers) new_cookie_jar = cookielib.LWPCookieJar("cookies" + '.txt') requests.utils.cookiejar_from_dict({c.name: c.value for c in session.cookies}, new_cookie_jar) new_cookie_jar.save("cookies"+'.txt', ignore_discard=True, ignore_expires=True) if __name__ == "__main__": login("xpower","q.123456","http://115.159.40.116/ajax/login.php") # 然后通过 session 进行访问即可.