【问题标题】:Cookies must be enabled to use GitHub in requests module python必须启用 Cookie 才能在请求模块 python 中使用 GitHub
【发布时间】:2017-11-15 16:54:13
【问题描述】:

我想检查一些用于登录 GitHub 的用户名和密码。 我检查并得到 github 登录的第一个输入名称是“login”,第二个是“password”,“Form”使用“POST”方法。我已经写了这段代码,但是当我想检查这段代码时,它告诉我 (Cookies must be enabled to use GitHub)

allData = {
    'login': x,
    'password': y
}

siteRequest = requests.post('https://github.com/login', data=allData)
print(siteRequest.content, end='\n\n')

我应该如何启用 cookie? 注意:我知道 github 有 API,但有些网站没有,所以我想增加我对这种方法的能力和知识......谢谢!

【问题讨论】:

    标签: python python-2.7 python-3.x cookies


    【解决方案1】:

    GitHub 的登录页面在加载时设置了一个带有会话 ID 的 cookie,此会话用于保持您的登录状态。

    要解决您的问题,只需创建一个请求会话对象,这将跟踪 cookie,然后使用同一会话发布您的登录信息。

    allData = {
        'login': x,
        'password': y
    }
    
    site_session = requests.Session()
    _ = site_session.get('https://github.com/login')  # This is just to get the initial
                                                      # cookie in the session
    siteRequest = site_session.post('https://github.com/login', data=allData)
    print(siteRequest.content, end='\n\n')
    

    【讨论】:

    • 谢谢我的朋友,这是正确的,但是我确定其中一些不匹配的每个密码和用户名,返回 github 登录页面的内容......,我真的想写类似的东西蛮力:),我的问题是什么?
    猜你喜欢
    • 2014-04-12
    • 2016-06-01
    • 1970-01-01
    • 2019-05-23
    • 2020-11-20
    • 2013-08-11
    • 2014-02-01
    • 2019-11-22
    • 1970-01-01
    相关资源
    最近更新 更多