qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請?jiān)L問 http://qaseven.github.io/

          selenium-webdriver(python) (十三) -- cookie處理

          本節(jié)重點(diǎn):

          • driver.get_cookies() 獲得cookie信息
          • add_cookie(cookie_dict)  向cookie添加會話信息
          • delete_cookie(name)   刪除特定(部分)cookie
          • delete_all_cookies()    刪除所有cookie

           

          通過webdriver 操作cookie 是一件非常有意思的事兒,有時候我們需要了解瀏覽器中是否存在了某個cookie 信息,webdriver 可以幫助我們讀取、添加,刪除cookie信息。

           

           

          打印cookie信息

           

          復(fù)制代碼
          #coding=utf-8  from selenium import webdriver import time  driver = webdriver.Chrome() driver.get("http://www.youdao.com")  # 獲得cookie信息 cookie= driver.get_cookies()  #將獲得cookie的信息打印 print cookie  driver.quit()
          復(fù)制代碼

          運(yùn)行打印信息:

          [{u'domain': u'.youdao.com', u'secure': False, u'value': u'aGFzbG9nZ2VkPXRydWU=', u'expiry': 1408430390.991375, u'path': u'/', u'name': u'_PREF_ANONYUSER__MYTH'}, {u'domain': u'.youdao.com', u'secure': False, u'value': u'1777851312@218.17.158.115', u'expiry': 2322974390.991376, u'path': u'/', u'name': u'OUTFOX_SEARCH_USER_ID'}, {u'path': u'/', u'domain': u'www.youdao.com', u'name': u'JSESSIONID', u'value': u'abcUX9zdw0minadIhtvcu', u'secure': False}]

           

           

          對cookie的操作

           

          上面的方式打印了所有cookie信息表,太多太亂,我們只想有真對性的打印自己想要的信息,看下面的例子

          復(fù)制代碼
          #coding=utf-8  from selenium import webdriver import time  driver = webdriver.Firefox() driver.get("http://www.youdao.com")   #向cookie的name 和value添加會話信息。 driver.add_cookie({'name':'key-aaaaaaa', 'value':'value-bbbb'})  #遍歷cookies中的name 和value信息打印,當(dāng)然還有上面添加的信息 for cookie in driver.get_cookies():     print "%s -> %s" % (cookie['name'], cookie['value'])   # 下面可以通過兩種方式刪除cookie # 刪除一個特定的cookie driver.delete_cookie("CookieName") # 刪除所有cookie driver.delete_all_cookies()  time.sleep(2) driver.close()
          復(fù)制代碼

          運(yùn)行打印信息:

          YOUDAO_MOBILE_ACCESS_TYPE -> 1 _PREF_ANONYUSER__MYTH -> aGFzbG9nZ2VkPXRydWU= OUTFOX_SEARCH_USER_ID -> -1046383847@218.17.158.115 JSESSIONID -> abc7qSE_SBGsVgnVLBvcu key-aaaaaaa -> value-bbbb  # 這一條是我們自己添加的

           

           

           

          通過博客園登陸來分析cookie

           

          復(fù)制代碼
          #coding=utf-8  from selenium import webdriver import time  driver = webdriver.Firefox() driver.get("http://passport.cnblogs.com/login.aspx?ReturnUrl=http://www.cnblogs.com/fnng/admin/EditPosts.aspx")  time.sleep(3) driver.maximize_window() # 瀏覽器全屏顯示  #通過用戶名密碼登陸 driver.find_element_by_id("tbUserName").send_keys("fnngj") driver.find_element_by_id("tbPassword").send_keys("123456")  #勾選保存密碼 driver.find_element_by_id("chkRemember").click() time.sleep(3) #點(diǎn)擊登陸按鈕 driver.find_element_by_id("btnLogin").click()  #獲取cookie信息并打印 cookie= driver.get_cookies() print cookie  time.sleep(2) driver.close()
          復(fù)制代碼

          運(yùn)行打印信息:

          復(fù)制代碼
          #第一次執(zhí)行信息 >>>  [{u'domain': u'.cnblogs.com', u'name': u'.DottextCookie', u'value': u'C709F15A8BC0B3E8D9AD1F68B371053849F7FEE31F73F1292A150932FF09A7B0D4A1B449A32A6B24AD986CDB05B9998471A37F39C3B637E85E481AA986D3F8C187D7708028F9D4ED3B326B46DC43B416C47B84D706099ED1D78B6A0FC72DCF948DB9D5CBF99D7848FDB78324', u'expiry': None, u'path': u'/', u'secure': False}] >>> ========================= RESTART ================================ #第二次執(zhí)行信息 >>>  [{u'domain': u'.cnblogs.com', u'name': u'.DottextCookie', u'value': u'5BB735CAD62E99F8CCB9331C32724E2975A0150D199F4243AD19357B3F99A416A93B2E803F4D5C9D065429713BE8B5DB4ED760EDCBAF492EABE2158B3A6FBBEA2B95C4DA3D2EFEADACC3247040906F1462731F652199E2A8BEFD8A9B6AAE87CF3059A3CAEB9AB0D8B1B7AD2A', u'expiry': 1379502502, u'path': u'/', u'secure': False}] >>> 
          復(fù)制代碼

           

          第一次注釋掉勾選保存密碼的操作,第二次通過勾選保存密碼獲得cookie信息 ;來看兩次運(yùn)行結(jié)果的cookie的何不同:

          u'expiry': None

          u'expiry': 1379502502

          通過對比發(fā)現(xiàn),不勾選保存密碼時expiry 的值為none ; 那么就可以初步判斷勾選保存密碼的操作在cookie 中起到了作用。至于是否準(zhǔn)確可以再做進(jìn)一步的分析。

           

           

           

           

           

          posted on 2013-09-13 11:31 順其自然EVO 閱讀(576) 評論(0)  編輯  收藏 所屬分類: selenium and watir webdrivers 自動化測試學(xué)習(xí)

          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 湖南省| 卢湾区| 东兰县| 济源市| 收藏| 怀宁县| 肇源县| 广河县| 安泽县| 井研县| 凭祥市| 中卫市| 柳林县| 磴口县| 法库县| 哈尔滨市| 开原市| 保亭| 武隆县| 合江县| 高淳县| 沈丘县| 当涂县| 蒙城县| 汽车| 台山市| 赤峰市| 镇安县| 福安市| 且末县| 宜春市| 阳原县| 思茅市| 涞水县| 淮北市| 潢川县| 册亨县| 洛川县| 攀枝花市| 乃东县| 石渠县|