iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
Software Development

Python 爬蟲這樣學,一定是大拇指拉!系列 第 15

[Python 爬蟲這樣學,一定是大拇指拉!] DAY15 - Cookie / Session

  • 分享至 

  • xImage
  •  

相信 Cookie 與 Session 很多人常常搞不清楚,今天就用超級簡單的方式來讓大家了解。

Cookie 與 Session

不知道大家還記不記得,HTTP 有個特性(HTTP / HTTPS 複習傳送門),那就是每次連線都是獨立的,與前次連線都毫無關係。以現實來比喻,就是每次跟同一個人講話時都要重新自我介紹,明明前 1 分鐘才自我介紹過==

所以!要怎麼讓 HTTP 解決這個問題呢!?那就是偷偷記下來拉~
那記下來之後,恩...要放哪裡呢?重點來了,會根據這些偷記下來的資訊的存放位置來給予稱呼。
存在 Client 端的,叫做 Cookie
Server 端的,則叫 Session

  • Cookie

    • 記錄網站上的個人設定或是操作,像是:購物車,填到一半的資料等。這也是為什麼有些網拍網站,明明沒登入下次再訪問同個網站時,卻還能記著你購物車的內容或輸入的資料。
      有些也會記錄登入資訊(Session ID),這樣就不用每次一直重複登錄了!
    • 而 Cookie 是以明碼的方式儲存傳送的,又是存在 Client 端,所以有被竄改的疑慮,所以通常不會放太重要的資料。
    • 另外 Cookie 也是有時效性的,像是太久沒訪問某個網站,就需要再重新登入一次。
  • Session

    • 相對於 Cookie 而言安全性高,因位處存在 Server 端。主要記錄 Server 上使用者的資訊,像是人數計數器、使用者的訪問日期、登入資訊(登入日期、Session ID)等。
    • Session ID:就是使用者登入後,會產生一組 Session ID 。通常會存入 Cookie,當使用者再次訪問時,Server 會去確認此 Session ID 使否存在或失效,來要求使用者是否需要重新登入。

所以有些資料是需要登入後才能獲取的,就需要在爬蟲程式中把 Cookie 的資訊填上,來維持登入狀態。

以上就是 Cookie 與 Session 的簡單介紹!


上一篇
[Python 爬蟲這樣學,一定是大拇指拉!] DAY14 - TCP / IP
下一篇
[Python 爬蟲這樣學,一定是大拇指拉!] DAY16 - 從爬蟲看 API / CGI
系列文
Python 爬蟲這樣學,一定是大拇指拉!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言