【问题标题】:How to change cookies expiry date in Python?如何在 Python 中更改 cookie 的到期日期?
【发布时间】:2022-08-05 09:51:13
【问题描述】:

我需要在使用 Selenium 时获得授权。所以在我的测试开始时,我需要打开已经授权的页面。现在我使用带有用户身份验证值的 cookie 来绕过登录。但是我看到我的 cookie 日期只有 1 周,这意味着我需要每周手动更改 cookie。它不是一种可接受的方法,所以我想让我的 cookie 没有过期期限或将日期设置为可能的最大日期。现在我的 json 文件如下所示:

{
        \"domain\": \"somdomain\",
        \"expiry\": 1659372517, # its very complicated to me read this value, but if I am checking it from browser I see that expiration date is only 1 week. 
        \"name\": \"somename\",
        \"value\": \"somevalue
    }

我试图手动更改到期日期,但它不起作用。我怎样才能改变它?有没有可能?另外,如果有可能帮助我了解如何解码日期值,因为我无法得到它......

请注意,我试图绕过登录到 Microsoft/Azure 帐户。我正在使用 Python + Selenium。

任何帮助将不胜感激。谢谢。

  • cookie 设置为在服务器端过期(Azure 可能默认设置或为其会话使用最多一周的时间)。手动更改 Selenium 一侧的 expiry 字段不会对此做任何事情。 expiry 的值是 Unix 纪元时间,所以如果你想让它更容易阅读,你可以使用(在 Python 中)类似下面的东西:import datetime; print(datetime.datetime.fromtimestamp(1659372517).strftime(\"%A %B %d %Y %I:%M:%S\")) 打印Monday August 01 2022 12:48:37。如果您的 CLI 上有 date 命令,则可以执行 date -d \"@1659372517\"
  • 非常感谢您回答我的两个问题。所以,据我所知,没有办法更改日期,我需要每周手动更改值,对吧?

标签: python azure cookies


【解决方案1】:

正如@wiki 所建议的那样,根据您的理解,是的,您需要使用 python 手动更改日期值。 这是打印日期时间的命令

import datetime;
print (datetime.datetime.fronttimestamp(165372517).strftime("%A %B %D %Y %I:%M:%S"))

如果您有 date 命令,那么您可以在 CLI 中使用以下命令

date -d "@165372517"

这是SO 线程,您可以参考它来使用硒收集到期日期格式。

【讨论】:

    猜你喜欢
    • 2011-06-19
    • 1970-01-01
    • 2018-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多