一、cookie的保存與讀取
成都創(chuàng)新互聯(lián)是一家業(yè)務范圍包括IDC托管業(yè)務,網站空間、主機租用、主機托管,四川、重慶、廣東電信服務器租用,雅安服務器托管,成都網通服務器托管,成都服務器租用,業(yè)務范圍遍及中國大陸、港澳臺以及歐美等多個國家及地區(qū)的互聯(lián)網數據服務公司。1.cookie的保存-FileCookie.Jar
from urllib import request,parse from http import cookiejar #創(chuàng)建cookiejar實例 filename = "cookie.txt" cookie = cookiejar.MozillaCookieJar(filename) #生成cookie的管理器 cookie_handler = request.HTTPCookieProcessor(cookie) #創(chuàng)建http請求管理器 http_handler = request.HTTPHandler() #生成https管理器 https_handler = request.HTTPHandler() #創(chuàng)建請求管理器 opener = request.build_opener(http_handler,https_handler,cookie_handler) def login(): """ 負責初次登錄 需要輸入用戶名密碼 :return: """ url = "http://www.renren.com/PLogin.do" data = { "email":"1215217867@qq.com", "password":"481648541615485" } #把數據進行編碼 data = parse.urlencode(data) #創(chuàng)建一個請求對象 req = request.Request(url,data=data.encode()) #使用opener發(fā)起請求 rep = opener.open(req) #保存cookie到文件 #ignore_discard表示及時cookie將要被丟棄也要保存下來 #ignore_expire表示如果該文件中cookie即使已經過期,保存 cookie.save(ignore_discard=True,ignore_expires=True) def getHomePage(): url = "http://www.renren.com/965187997/profile" #如果已經執(zhí)行了login函數,則opener自動已經包含相應的cookie值 rsp = opener.open(url) html = rsp.read().decode() with open("rsp.html","w") as f: f.write(html) if __name__ == "__main__": """ 執(zhí)行完login之后,會得到授權之后的cookie 我們嘗試把cookie打印出來 """ login() getHomePage()