request - cookie操作(二)


from urllib import request,parse
from http.cookiejar import CookieJar

headers = {
"User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36"
}

def get_opener():
# 1.登錄
# 1.1 創建一個cookiejar對象
cookiejar = CookieJar()
# 1.2 使用cookiejar創建一個HTTPCookieProcessor對象
handler = request.HTTPCookieProcessor(cookiejar)
# 1.3 使用上一步的handler創建一個opener
opener = request.build_opener(handler)
return opener

def login_renern(opener):
# 1.4 使用opener發送登錄的請求(輸入賬號和密碼)
data = {
"email":"xxxx",
"password":"xxxx"
}
login_url = "http://www.renren.com/PLogin.do"
req = request.Request(login_url,data=parse.urlencode(data).encode("utf-8"),headers=headers)
opener.open(req)

def visit_profile(opener):
# 2.訪問主頁
pro_url = "http://www.renren.com/452057374/profile?ref=page"
#獲取個人主頁的頁面的時候,不要新建一個opener
#而應該使用之前的那個opener,因為之前的那個opener已經包含了登錄所需要的cookie信息
resp = opener.open(pro_url)
with open("renren.html","w",encoding="utf-8") as file:
file.write(resp.read().decode("utf-8"))

if __name__ == '__main__':
opener = get_opener()
login_renern(opener)
visit_profile(opener)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM