現在的位置: 首頁 > web前端 > 正文

cookiejar的用法

2020年07月21日 web前端 ⁄ 共 1125字 ⁄ 字型大小 評論關閉

  我們在使用爬蟲的時候,經常會用到cookie進行模擬登陸和訪問。在使用urllib庫做爬蟲,我們需要藉助http.cookiejar庫中的CookieJar來實現。


  cookiejar怎麼樣


  CookieJar類有一些子類,分別是FileCookieJar,MozillaCookieJar,LWPCookieJar。


  CookieJar:管理HTTPcookie值、存儲HTTP請求生成的cookie、向傳出的HTTP請求添加cookie的對象。整個cookie都存儲在內存中,對CookieJar實例進行垃圾回收後cookie也將丟失。


  FileCookieJar(filename,delayload=None,policy=None):從CookieJar派生而來,用來創建FileCookieJar實例,檢索cookie信息並將cookie存儲到文件中。filename是存儲cookie的文件名。delayload為True時支持延遲訪問訪問文件,即只有在需要時才讀取文件或在文件中存儲數據。


  MozillaCookieJar(filename,delayload=None,policy=None):從FileCookieJar派生而來,創建與Mozilla瀏覽器cookies.txt兼容的FileCookieJar實例。


  LWPCookieJar(filename,delayload=None,policy=None):從FileCookieJar派生而來,創建與libwww-perl標準的Set-Cookie3文件格式兼容的FileCookieJar實例。


  其實大多數情況下,我們只用CookieJar(),如果需要和本地文件交互,就用MozillaCookjar()或LWPCookieJar()。


  當然,如果我們對cookie有定製的需要,那麼我們也要藉助HTTPCookieProcess處理器來處理。具體看下面代碼。


  使用CookieJar獲取cookie值


  代碼如下:


  if__name__=='__main__':


  url='http://www.baidu.com/'


  headers={


  'User-Agent':'Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/53.0.2785.104Safari/537.36Core/1.53.3427.400QQBrowser/9.6.12513.400'


  }


  總之,cookiejar給大家簡單的介紹了一些,希望大家多看看。


  

抱歉!評論已關閉.