3

我想创建一个自动从站点下载 tar 文件的脚本。问题是,我需要创建一个包含 JSESSIONID cookie 值的 HTTP GET,以便下载文件。该应用程序是闪存,否则我将以更正常的方式检索文件。当我打印 all_cookies 时,我得到下面的输出,它在我的脚本之前。我想要 JSESSIONID '8430..' 等的值。任何关于我如何做到这一点的见解将不胜感激..

[{u'domain': u'my.site.com', u'name': u'JSESSIONID', u'value': u'8430c050201161 b5404d52194a5445561a02', etc..]

这是我的脚本:

from selenium import webdriver
import selenium.webdriver.support.ui as ui
from selenium.webdriver.common.keys import Keys
import time
import datetime
import os
import shutil

dt = str(datetime.datetime.now().strftime("%m-%d-%Y"))


fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.download.dir", os.getcwd())
fp.update_preferences()
driver = webdriver.Firefox(fp)
wait = ui.WebDriverWait(driver,10)

driver.get("https://my.site.com")
un = driver.find_element_by_name("email")
pw = driver.find_element_by_name("password")
un.send_keys('me@me.com')
pw.send_keys("password")
driver.find_element_by_name("login").click()

all_cookies = driver.get_cookies()
print all_cookies
4

1 回答 1

1

get_cookies()返回一组字典,对应于 cookie。

从您的示例数据中,您可以通过“名称”和“值”键进行字典查找来检索单个名称/值对。

例如:

all_cookies[0]['name']  # returns 'JSESSIONID'
all_cookies[0]['value']  # returns '8430c050201161b5404d52194a5445561a02'
于 2013-07-19T15:59:41.523 回答