我正在尝试使用python登录网站,似乎最好的方法是使用请求库。我的问题是解释我需要在有效载荷中发送到网站的内容。当我查看网站的HTML时,我看到了:
<script>
cdc = typeof cdc == "undefined" ? {} : cdc;
cdc.login = typeof cdc.login == "undefined" ? {} : cdc.login;
cdc.login.prefsObj = {
login_showErrorMsg : false,
login_show_smtryno : false,
login_action : "https://sso.cisco.com/autho/login/loginaction.html",
login_user_name : "userid",
login_password_name: "password",
login_domain : "https://www.cisco.com",
login_target : "",
login_smauthreason : "",
login_smquerydata : "",
login_smagentname : "",
login_postpreservationdata :"",
login_SMENC : "",
login_SMLOCALE : ""
};
</script>
这是告诉我我应该使用dict条目'login_user_name'创建一个有效负载,还是告诉我应该使用'userid'作为dict条目的名称?
我是将此帖子发布到显示登录页面的网址,还是将其发布到显示为“login_action”网址的内容?
...谢谢
答案 0 :(得分:0)
事实证明,您需要在“login_action”字段中发布到该网址。您还需要在有效负载中使用“userid”和“password”,而不是左侧的内容。最终的有效载荷需要如下所示:
payload = {
'userid' : 'myusername',
'password' : 'mypassword',
'target' : '',
'smauthreason' : '',
'smquerydata' : '',
'smagentname' : '',
'postpreservationdata' : '',
'SMENC' : '',
'SMLOCALE' : ''
}
现在问题是我收到的数据说我无法重定向......