日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

使用Python中的cookielib模擬登錄網站

系統 1877 0

前面簡單提到了 Python 模擬登錄的程序,但是沒寫清楚,這里再補上一個帶注釋的 Python 模擬登錄的示例程序。簡單說一下流程:先用cookielib獲取cookie,再用獲取到的cookie,進入需要登錄的網站。

            
 # -*- coding: utf-8 -*-

 # !/usr/bin/python
 
 import urllib2
 import urllib
 import cookielib
 import re 
 auth_url = 'http://www.nowamagic.net/'
 home_url = 'http://www.nowamagic.net/';
 # 登陸用戶名和密碼
 data={
   "username":"nowamagic",
   "password":"pass"
 }
 # urllib進行編碼
 post_data=urllib.urlencode(data)
 # 發送頭信息

 headers ={

   "Host":"www.nowamagic.net",
 "Referer": "http://www.nowamagic.net"
 }
 # 初始化一個CookieJar來處理Cookie

 cookieJar=cookielib.CookieJar()
 # 實例化一個全局opener

 opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cookieJar))

 # 獲取cookie
 req=urllib2.Request(auth_url,post_data,headers)
 result = opener.open(req)
 # 訪問主頁 自動帶著cookie信息
 result = opener.open(home_url)
 # 顯示結果
 print result.read()


          

再附帶幾個示例程序:

1. 使用已有的cookie訪問網站

            
import cookielib, urllib2
 
 ckjar = cookielib.MozillaCookieJar(os.path.join('C:\Documents and Settings\tom\Application Data\Mozilla\Firefox\Profiles\h5m61j1i.default', 'cookies.txt')) 
 req = urllib2.Request(url, postdata, header)
 
 req.add_header('User-Agent', \
   'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)')
 
 opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(ckjar) )
 
 f = opener.open(req)
 htm = f.read()
 f.close()


          

2. 訪問網站獲得cookie,并把獲得的cookie保存在cookie文件中

            
 import cookielib, urllib2
 
 req = urllib2.Request(url, postdata, header)
 req.add_header('User-Agent', \
   'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)')
 
 ckjar = cookielib.MozillaCookieJar(filename)
 ckproc = urllib2.HTTPCookieProcessor(ckjar)
 
 opener = urllib2.build_opener(ckproc)
 
 f = opener.open(req)
 htm = f.read()
 f.close()
 
 ckjar.save(ignore_discard=True, ignore_expires=True)

          

3. 使用指定的參數生成cookie,并用這個cookie訪問網站

            
 import cookielib, urllib2
 
 cookiejar = cookielib.CookieJar()
 urlOpener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookiejar))
 values = {'redirect':", 'email':'abc@abc.com',
      'password':'password', 'rememberme':", 'submit':'OK, Let Me In!'}
 data = urllib.urlencode(values)
 
 request = urllib2.Request(url, data)
 url = urlOpener.open(request)
 print url.info()
 page = url.read()
 
 request = urllib2.Request(url)
 url = urlOpener.open(request)
 page = url.read()
 print page

          


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 喀喇沁旗| 和龙市| 塘沽区| 翼城县| 宁乡县| 汪清县| 定边县| 佳木斯市| 公安县| 镇赉县| 商南县| 墨竹工卡县| 晋江市| 延长县| 景德镇市| 南投县| 蒙山县| 五华县| 泸西县| 杭锦后旗| 巴中市| 林西县| 兖州市| 潞西市| 桐乡市| 济南市| 嘉兴市| 富锦市| 车致| 新营市| 岗巴县| 金川县| 花垣县| 阿坝县| 汕尾市| 天津市| 扎鲁特旗| 岫岩| 咸阳市| 金山区| 桐城市|