編輯本隨筆
cookie作用:伺服器使用cookie來記錄客戶端的狀態資訊
實現流程:
執行登陸操作(獲取cookie)
在發起個人主頁請求時,需要將cookie攜帶到該請求中
注意:session物件,也可以傳送請求,如果伺服器端會給客戶端返回cookie,session物件自動將cookie進行儲存
importrequests
#建立session物件
session =requests.session()
#建立headlers
headers=
#指定login對應url
login_url = "
"#封裝登陸相關資料
data =
#使用session發起登陸請求,將cookie獲取且儲存到session當中
login_response=session.post(url=login_url,data=data,headers=headers)
#使用session對個人主頁發起請求,獲取響應頁面資料
home_url="
"response=session.get(url=home_url,headers=headers)
page_text=response.text
with open(
"./doubanhomepage.html
",'w
',encoding="
utf-8
") as fp:
fp.write(page_text)
什麼要使用**:
反爬操作。
反反爬手段
分類:正向**:**客戶端獲取資料(爬蟲使用正向**)
反向**:代替服務端提供資料
免費**ip提供商:
www.goubanjia.com
快**西祠**
importrequests
url = '
'#將**ip封裝到乙個字典中
proxy=
#構建headers
headers=
#在請求之前更換網路ip
response=requests.get(url=url,headers=headers,proxies=proxy)
#資料持久化
page_text=response.text
with open(
"./**.html
",'w
',encoding='
utf-8
') as fp:
fp.write(page_text)
requests模組在發起https請求時需要載入ssl證書,否則會報requests.exceptions.sslerror: httpsconnectionpool(host='www.baidu.com', port=443): max retries exceeded with url: / (caused by sslerror(sslerror(1, '[ssl: certificate_verify_failed] certificate verify failed (_ssl.c:852)'),))錯誤,
參考官方文件
由於我需要fiddler來**requests請求,所以requests模組需要載入fiddler的根證書,但fiddler匯出的證書是cer格式。
但是requests支援的是pem格式,所以需要借助openssl工具來進行格式轉換。
openssl x509 -inform der -text -in fiddlerroot.cer -out c:\users\ya\desktop\out.pem
在請求引數中直接新增verify引數即可
response = requests.get(url='', headers=headers,proxies=proxies,verify=r'
c:\users\ya\desktop\out.pem
')
在session中使用如下方式(未驗證)
s =requests.session()s.verify = '
/path/to/certfile
'
requests模組的高階使用
型別免費 為了避免ip失效,我們應該構建乙個 池,裡面存放可用的 池的構建也是通過爬蟲實現的,我們可以去快 上去爬取,但是頻繁訪問快 也是會被封的,所以我們需要去買一些 來爬取快 有點以小博大的意思 這裡的 選取主要用於舉例,主要是方法 池的用法 ip pool url page text requ...
Python高階(requests模組)
requests 是用python語言編寫,基於 urllib的第三方庫,在呼叫http介面,以及http測試時常用。需要學會requests與response,其中response是requests請求返回的物件。1.requests.get url,params none,kwargs 2.re...
requests模組高階操作之proxies
一 proxy 概念 伺服器 作用 請求和響應的 免費 www.goubanjia.com 快 西祠 精靈 付費 匿名度 透明 對方伺服器知道你使用 也知道你真實ip 匿名 對方知道你使用 但不知道你真實ip 高匿 對方什麼都不知道 型別 http 只能攔截或 http請求 https 只能攔截或者...