十五 cookies和session的使用

2022-06-30 12:45:13 字數 1118 閱讀 8533

(1)cookie資料存放在客戶的瀏覽器上,session資料放在伺服器上。

(2)cookie不是很安全,別人可以分析存放在本地的cookie並進行cookie欺騙。

(3)session會在一定時間內儲存在伺服器上。當訪問增多,會比較占用伺服器的效能。

(4)單個cookie儲存的資料不能超過4k,很多瀏覽器都限制乙個站點最多儲存20個cookie。

能夠請求到登入之後的頁面,因此必須傳送帶有cookies的請求。

一套cookie和session往往和乙個使用者對應。

請求太快,請求次數太多,容易被伺服器識別為爬蟲。

所以:不需要cookie的時候盡量不去使用cookie。

requests提供了乙個叫做session類,來實現客戶端和服務端的會話保持

思路:先例項化session,再使用session傳送請求,登入**,把cookie儲存在例項化的session中,接著使用session請求登入之後才能訪問的**,session能夠自動的攜帶登入成功時儲存在其中的cookie,進行請求。

使用方法:

(1)例項化乙個session物件:`session = requests.session()`

(2)讓session傳送get或則post請求:`response = session.get(url,headers)`

(1)把cookie物件轉化為字典:`requests.util.dict_from_cookiejar`

(2)設定超時:`response=requests.get(url,1)`

(3)配合狀態碼判斷是否請求成功:`assert response.status_code==200`

(4)對url進行解碼:`requests.utils.unquote("https:%3a%2f%2ftieba.baidu.com")`

(5)對url進行編碼:`requests.utils.quote("")`

安裝:`pip install retrying`

作用:重複執行一段**

說明:retrying以裝飾器的方式使用

案例:from retrying import retry

@retry

def function():

pass

javaweb中Cookie和Session實現

cookie是存在於瀏覽器的文字,用於儲存使用者的登入密碼等資料 session存在於服務端,用於跟蹤使用者登入狀態等 cookie cookies request.getcookies if cookies null cookies.length 0 else 在servelt中通過respons...

Servlet中Cookie和Session的學習

會話cookie 關閉瀏覽器,就失效 持久cookie 存放在客戶端上。在指定的期限內有效。是以檔案形式存放的 setmaxage 應用 自動登入 瀏覽記錄 購物車 http的請求是無狀態。客戶端與伺服器在通訊的時候,是無狀態的,其實就是客戶端在第二次來訪的時候,伺服器根本就不知道這個客戶端以前有沒...

讀取和寫入Cookies

region 讀取或寫入cookie 2 3 寫cookie值 4 5 名稱 6 值 7 public static void writecookie string strname,string strvalue 8 14 cookie.value urlencode strvalue 16 17 ...