首页 > 解决方案 > Python 请求:无法获取 post cookie

问题描述

我正在尝试登录使用 recaptcha 2.0 的网站。登录有点安全,但到目前为止我设法通过了检查。基本上除了验证码和发布数据之外,它需要一个隐藏的 csrf 令牌输入和一个 cookie csrf 令牌,两者都是必需的,否则它将显示 404。现在我设法得到了这些,我正在发送一个发布请求,如下所示

这是保存第一次访问网页时抓取的 cookie 的变量

从昨晚开始尝试解决这个问题,当我尝试在第二个请求上发送数据时,没有 cookie 回来

{'a': '1', 'b': '2', 'c': '3', '__cfduid': 'dfe11fd58412a09b347fcfcc2601584845857460'} 现在到实际代码:

formData = {
            'utf8': '✓',
            'authenticity_token': 'xxx'
            'bb_user[email]': _BBEMAIL,
            'bb_user[password]': _BBPASS,
            'g-recaptcha-response': captcha,
            'bb_user[remember_me]': '1'
        }

cookie = "cookie variable above" #just an edit
        try:
            rp = requests.post(url, headers=headers, data=formData, allow_redirects=False, cookies=cookie, verify=False, timeout=10)
            cookie_dict = dict(rp.cookies)
            with open(_FILE_PATH, 'w') as f:
                f.write(str(cookie_dict))
            return True
        except Exception, e:
            print '===============login==============',e
            traceback.print_exc()
            return False

我试图通过将它们保存到文件中来保存 cookie 以供以后使用,但我在文件中得到的只是 {} 我使用 2captcha api 来解决验证码我也知道这里有类似的问题,但似乎没有解决方案有效

标签: pythoncookiesrequestsession-cookies

解决方案


推荐阅读