python爬蟲 模擬登錄人人網(wǎng)過程解析
requests 提供了一個叫做session類,來實現(xiàn)客戶端和服務(wù)端的會話保持
使用方法
1.實例化一個session對象
2.讓session發(fā)送get或者post請求
session = requests.session() session.get(url,headers)
下面就用人人網(wǎng)來實戰(zhàn)一下
# coding=utf-8
import requests
session = requests.session()
# 登錄的表單url
post_url = "http://www.renren.com/PLogin.do"
post_data = {"email": "your_email", "password": "your_password"}
headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36"
}
# 使用session發(fā)送post請求,cookie保存在其中
session.post(post_url, data=post_data, headers=headers)
# 在使用session進(jìn)行請求登陸之后才能訪問的地址
# 這是個人首頁url
r = session.get("http://www.renren.com/327550088/profile", headers=headers)
# 保存頁面到本地
with open("renren1.html", "w", encoding="utf-8") as f:
f.write(r.content.decode('utf-8'))
就這么簡單,模擬登錄上人人網(wǎng)并且獲取了個人首頁信息頁面保存到本地。
其實網(wǎng)站記錄登錄狀態(tài)就是通過cookie里面攜帶的信息,如果我們發(fā)送請求的時候帶上登錄的cookie能不能夠訪問到只有登錄才能訪問的頁面,當(dāng)然是可以的
請看代碼
# coding=utf-8
import requests
headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36",
"Cookie":"你的登錄cookie"
}
r = requests.get("http://www.renren.com/327550088/profile",headers=headers)
#保存頁面
with open("renren2.html","w",encoding="utf-8") as f:
f.write(r.content.decode())
可以看到, Cookie 可以放在 headers 中,其實 requests 中也有一個參數(shù)用來傳遞cookie,這個參數(shù)就是 cookies
請看代碼
# 字典生成器的用法
cookies = {i.split("=")[0]:i.split("=")[1] for i in cookies.split("; ")}
print(cookies)
r = requests.get("http://www.renren.com/327550088/profile",headers=headers,cookies=cookies)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python爬取企查查企業(yè)信息之selenium自動模擬登錄企查查
- Python模擬登錄requests.Session應(yīng)用詳解
- Python 通過爬蟲實現(xiàn)GitHub網(wǎng)頁的模擬登錄的示例代碼
- Python3以GitHub為例來實現(xiàn)模擬登錄和爬取的實例講解
- Python+Selenium+phantomjs實現(xiàn)網(wǎng)頁模擬登錄和截圖功能(windows環(huán)境)
- Python模擬登錄之滑塊驗證碼的破解(實例代碼)
- python 利用瀏覽器 Cookie 模擬登錄的用戶訪問知乎的方法
- Python 制作自動化翻譯工具
- python實現(xiàn)百度文庫自動化爬取
- Python模擬登錄網(wǎng)易云音樂并自動簽到
相關(guān)文章
Keras中的多分類損失函數(shù)用法categorical_crossentropy
這篇文章主要介紹了Keras中的多分類損失函數(shù)用法categorical_crossentropy,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
對Python函數(shù)設(shè)計規(guī)范詳解
今天小編就為大家分享一篇對Python函數(shù)設(shè)計規(guī)范詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
對Python subprocess.Popen子進(jìn)程管道阻塞詳解
今天小編就為大家分享一篇對Python subprocess.Popen子進(jìn)程管道阻塞詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
Python Flask基礎(chǔ)到登錄功能的實現(xiàn)代碼
這篇文章主要介紹了Python Flask基礎(chǔ)到登錄功能的實現(xiàn)代碼,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-05-05
python學(xué)習(xí)-List移除某個值remove和統(tǒng)計值次數(shù)count
這篇文章主要介紹了?python學(xué)習(xí)-List移除某個值remove和統(tǒng)計值次數(shù)count,文章基于python的相關(guān)內(nèi)容展開詳細(xì)介紹,需要的小伙伴可以參考一下2022-04-04

