Python:请求会话登录 Cookie

2023-12-10

我的目的是登录网站,然后从 python 脚本访问受保护的图像。我可以通过浏览器进行合法和工作访问。

这就是我现在所拥有的。

import requests

s = requests.Session()

s.get('*domain*')

r_login  =s.post('*domain*/user.php', headers={'cmd': 'login', 'loginname': '***', 'password': '***' })

print (s.cookies)
print (r_login.status_code)

r_img = s.get('*domain*/*protectedimage*.jpg')
print (r_img.status_code)
print (r.cookies)

print (s.cookies['PHPSESSID'])

Output:

<<class 'requests.cookies.RequestsCookieJar'>[<Cookie PHPSESSID=664b0842085b847a04d415a22e013ad8 for *domain*/>]>
200
403
<<class 'requests.cookies.RequestsCookieJar'>[]>
664b0842085b847a04d415a22e013ad8

我确信我可以成功登录,因为我在这样做后曾经下载过html文件,并且它是处于登录状态的。但我的问题是,在我看来,我的PHPSESSIDcookie 没有通过,所以我得到了403错误返回。但我在我的会议中显然有它。我也尝试过手动将 cookie 添加到我的"r_img"行,这没有什么区别,我仍然得到一个空的CookieJar and a 403错误返回。仅使用 requests 模块不可能吗?我是不是忽略了什么?请原谅我不太熟悉HTTP要求。

我使用 Python 3.4 只是为了清楚起见。


你正在传递你的表单数据 as HTTP 标头。 POST 登录表单应发送表单元素作为data参数改为:

r_login = s.post('*domain*/user.php', 
                 data={'cmd': 'login', 'loginname': '***', 'password': '***' })

Do 检查返回的尸体,不仅仅是状态代码。您的 POST 请求已被服务器接受(200 OK)但由于没有发布登录信息,body很可能会告诉您诸如“登录不正确,请重试”之类的信息。

服务器很可能再次清除了 cookie,因为当您请求图像时它不是有效的登录会话。 403 响应可能包含Set-Cookie标题为PHPSESSID用过去的日期来清除它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python:请求会话登录 Cookie 的相关文章

  • Python、Tkinter、更改标签颜色

    有没有一种简单的方法来更改按钮中文本的颜色 I use button text input text here 更改按下后按钮文本的内容 是否存在类似的颜色变化 button color red Use the foreground设置按钮
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • 如何使用装饰器禁用某些功能的中间件?

    我想模仿的行为csrf exempt see here https docs djangoproject com en 1 11 ref csrf django views decorators csrf csrf exempt and h
  • 从列表中的数据框列中搜索部分字符串匹配 - Pandas - Python

    我有一个清单 things A1 B2 C3 我有一个 pandas 数据框 其中有一列包含用分号分隔的值 某些行将包含与上面列表中的一项的匹配 它不会是完美的匹配 因为它在其中包含字符串的其他部分 该列 例如 该列中的一行可能有 哇 这里
  • Python 中的二进制缓冲区

    在Python中你可以使用StringIO https docs python org library struct html用于字符数据的类似文件的缓冲区 内存映射文件 https docs python org library mmap
  • Abaqus 将曲面转化为集合

    我一直试图在模型中找到两个表面的中心 参见照片 但未能成功 它们是元素表面 面 查询中没有选项可以查找元素表面的中心 只能查找元素集的中心 找到节点集的中心也很好 但是我的节点集没有出现在工具 gt 查询 gt 质量属性选项中 而且我找不到
  • 当玩家触摸屏幕一侧时,如何让 pygame 发出警告?

    我使用 pygame 创建了一个游戏 当玩家触摸屏幕一侧时 我想让 pygame 给出类似 你不能触摸屏幕两侧 的错误 我尝试在互联网上搜索 但没有找到任何好的结果 我想过在屏幕外添加一个方块 当玩家触摸该方块时 它会发出警告 但这花了很长
  • 表达式中的 Python 'in' 关键字与 for 循环中的比较 [重复]

    这个问题在这里已经有答案了 我明白什么是in运算符在此代码中执行的操作 some list 1 2 3 4 5 print 2 in some list 我也明白i将采用此代码中列表的每个值 for i in 1 2 3 4 5 print
  • HTTPS 代理不适用于 Python 的 requests 模块

    我对 Python 还很陌生 我一直在使用他们的 requests 模块作为 PHP 的 cURL 库的替代品 我的代码如下 import requests import json import os import urllib impor
  • 使用 Javascript 设置 cookie [重复]

    这个问题在这里已经有答案了 我正在尝试构建我的第一个移动应用程序 它需要连接到我的 mysql 数据库并使用 json 返回数据 这很好 目前我有一个登录系统 一旦确定用户名和密码存在 它就会返回一条成功消息 对于下一步 我想在我的页面上使
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • 在 Pandas DataFrame Python 中添加新列[重复]

    这个问题在这里已经有答案了 例如 我在 Pandas 中有数据框 Col1 Col2 A 1 B 2 C 3 现在 如果我想再添加一个名为 Col3 的列 并且该值基于 Col2 式中 如果Col2 gt 1 则Col3为0 否则为1 所以
  • 对输入求 Keras 模型的导数返回全零

    所以我有一个 Keras 模型 我想将模型的梯度应用于其输入 这就是我所做的 import tensorflow as tf from keras models import Sequential from keras layers imp
  • 使用 Apache HTTPd 模块的 OAuth 2.0 身份验证

    是否可以使用 Apache HTTPd 服务器模块来实现 OAuth 2 0 或 1 0 我选择这条路线是因为每个请求都会首先到达 HTTPd 模块 因此我必须从那里进行身份验证 如果可能的话 请分享相关链接 我要补充一下尤金尼奥的答案mo
  • 从 Python 中的类元信息对 __init__ 函数进行类型提示

    我想做的是复制什么SQLAlchemy确实 以其DeclarativeMeta班级 有了这段代码 from sqlalchemy import Column Integer String from sqlalchemy ext declar
  • 使用基于正则表达式的部分匹配来选择 Pandas 数据帧的子数据帧

    我有一个 Pandas 数据框 它有两列 一列 进程参数 列 包含字符串 另一列 值 列 包含相应的浮点值 我需要过滤出部分匹配列 过程参数 中的一组键的子数据帧 并提取与这些键匹配的数据帧的两列 df pd DataFrame Proce
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • Python - 字典和列表相交

    给定以下数据结构 找出这两种数据结构共有的交集键的最有效方法是什么 dict1 2A 3A 4B list1 2A 4B Expected output 2A 4B 如果这也能产生更快的输出 我可以将列表 不是 dict1 组织到任何其他数

随机推荐

  • 在我的应用程序中登录 Facebook/Twitter

    我正在开发我的网站 在我的网站中我希望用户通过他们的登录 社交网络凭据 例如 Facebook 和 Twitter 当这些用户在我的网站上进行任何活动时 我应该如何跟踪他们 假设用户使用 Facebook 用户名和密码登录 现在他被重定向到
  • 最新的 BitTorrent DHT 实施建议是什么?

    我正在努力实现另一个 BitTorrent 客户端 目前正在与 DHT 作斗争 是按照这个规范来实现的http www bittorrent org beps bep 0005 html但开始调试它时 我注意到网络上其他节点的响应有所不同
  • ZF 包含路径

    require once 是否正确 你会在哪里以及如何放置它包含路径 它不应该在 application ini 或 bootstrap 中吗 例子 require once Zend View Helper Abstract php qu
  • C++ std::map 键排序比较函数?

    我有一个类 其中重载了所有比较运算符 我将一堆这些对象作为键加载到地图中 并且我希望地图对它们进行从最小到最大的排序 然而 地图实际上是按从大到小排序的 为什么是这样 当它对映射进行排序时 它是否不使用键上的比较运算符 我怎样才能让它做到这
  • Java/Spring 异步处理 Spring 批处理作业请求

    目前 我在应用程序中公开了一个启动 Spring 批处理作业的休息端点 但是 请求不是异步安排的 作业完成后提供响应 并显示批处理状态MyResponse object RestController RequestMapping test
  • 如何检查 TextView 字符串是否已被修剪(选取框)?

    If a TextView其父元素中没有足够的空间 我将显示一个图标 该文本或图标上的选项卡将用于调用包含完整字符串的警报对话框 所以我需要知道是否TextView已被修剪 计算TextView的宽度并计算将在textview中显示的文本的
  • 使弹性项目换行以创建新列

    我正在 div 中填充元素 并且我想对它们进行排列 如下所示 1 3 2 4 现在 它只是在下降 1 2 3 4 我如何告诉它在 2 个元素之后移动到下一列 parent display flex flex direction column
  • 如何将 hbase 表转储到文本文件中?

    我需要转储 HBase 中的一张表并需要采用文本文件 csv 格式 我寻找scan export and get在 HBase shell 中执行命令 但不起作用 有很多方法可以从 HBase 表中获取数据 例如运行导出映射 归约作业 您可
  • 如何使 VK_LAYER_KHRONOS_validation 可用?

    解决方案 卸载 vulkan 在注册表 HKLM SOFTWARE Khronos Vulkan ExplicitLayers 和 HKLM SOFTWARE WOW6432Node Khronos Vulkan ExplicitLayer
  • 用于创建 Lambda 的 AWS Java SDK 版本

    我正在尝试按照所述指南开发 AWS Java lambda 函数here其中描述了RequestHandler接口 还引用 AWS lambda java core 库 不过 我正在尝试按照推荐使用最新的 SDKhere但这是完全不同的Re
  • 什么样的内存语义控制 C# 中的数组分配?

    鉴于以下情况 字节 数据 和一个声明为的函数私有字节 构造命令 如果我要分配的结果构造命令 to sDatasData 是否只是指向从函数返回的内容 或者是否会在内存中为 sData 分配一些空间 并将函数结果的内容复制到其中 该赋值将简单
  • 从 json 中解组嵌套对象

    我有传入的 JSON 字符串 需要解组为 JAXB 带注释的对象 我正在使用抛弃来做到这一点 JSON 字符串如下所示 objectA propertyOne some val propertyTwo some other val obje
  • 如何调试 Google Apps 脚本(又名 Logger.log 记录到哪里?)

    在Google表格中 您可以添加一些脚本功能 我正在添加一些东西onEdit事件 但我不知道它是否有效 据我所知 您无法从 Google Sheets 调试实时事件 因此您必须从调试器执行此操作 这是毫无意义的 因为事件参数传递给了我的on
  • Java Eclipse IDE 出现“未找到模块 javafx.controls”错误

    我正在使用带有 Java 的 Eclipse IDE 2020 03 版本 我正在尝试使用 FXML 在线检查了一些教程和步骤并遵循它们 但我仍然收到以下错误 boot层初始化时出错 java lang module FindExcepti
  • jQuery-mobile 和 ASP.NET 组合问题

    我正在开发一个结合 jQuery mobile 和 asp net 网络表单 为了使我的 asp net 控件的回发正常工作 我必须禁用 ajax 页面顶部 如下所示 但是当像这样禁用ajax时 其他功能似乎不起作用 我无法从 jQuery
  • 获取 JavaScript 正则表达式中每个捕获的索引

    我想匹配正则表达式 例如 a b c d with aabccde 并获取以下信息 a at index 0 b at index 2 cc at index 3 我怎样才能做到这一点 String match 返回匹配列表和完整匹配开始的
  • 如何减少pyinstaller中的exe文件大小

    我正在尝试从 python 脚本开发 exe 文件 但其大小超过 715MB 即使我使用虚拟环境进行开发 但大小仍然很大 我在脚本中使用的这些库 import numpy as np import pandas as pd import o
  • VoIP 通知证书主题必须以“.voip”结尾,设备令牌应用程序包以“.voip”结尾

    我在 twilio 中遇到错误 说 VoIP 通知证书主题必须以 voip 结尾 设备令牌应用程序包以 voip 结尾 当我检查类似的问题时发现解决方案是更改 解决方案是 BundleID voip 我尝试在developer apple中
  • 在 Windows 中的 Android 中通过代理启用 Internet 连接

    如何在 Windows 中通过 Android 代理启用互联网连接 http www coderanch com t 462906 Android Mobile connect internet behind proxy 在早期版本的 An
  • Python:请求会话登录 Cookie

    我的目的是登录网站 然后从 python 脚本访问受保护的图像 我可以通过浏览器进行合法和工作访问 这就是我现在所拥有的 import requests s requests Session s get domain r login s p