Python要求使用网站登录

时间:2017-12-18 12:58:58

标签: python python-3.x python-requests session-cookies build-automation

我似乎无法使用python requests.session()函数登录我的大学网站。我已经尝试检索登录所需的所有标题和cookie但它没有使用我的凭据成功登录。它没有显示任何错误,但我应该登录后查看的源代码显示它仍然没有登录。我被告知我需要使用csrf cookie信息,但我似乎无法动态检索csrf cookie数据因为它在我尝试检索时引发KeyError,就像我检索其他2个cookie信息一样。请帮助别人。

我的所有代码都在下面。我用我的凭据填写登录名和密码,但其余的都是确切的代码。

import requests

with requests.session() as r:
    url = "https://www.ouac.on.ca/apply/nonsecondary/intl/en_CA/user/login"
    page = r.get(url)
    aspsessionid = r.cookies["ASPSESSIONID"]
    ouacapply1 = r.cookies["OUACApply1"]
    LOGIN = ""
    PASSWORD = ""
    submit = "Log In"
    login_data = dict(ASPSESSIONID=aspsessionid, OUACApply1=ouacapply1, login=LOGIN, password=PASSWORD, submitButton=submit)
    header = {"Referer":"https://www.ouac.on.ca/apply/nonsecondary/intl/en_CA/user/login", "User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0"}
    logged_in = r.post(url, data=login_data, headers=header)
    new_page = r.get(url="https://www.ouac.on.ca/apply/nonsecondary/intl/en_CA/profile/")
    plain_text = new_page.text
    print(plain_text)

1 个答案:

答案 0 :(得分:1)

我没有帐户,所以我无法测试它,但它可能是这样的。

std