2017-04-03 25 views
0

Ich versuche, eine Anmeldung mit Python auf einer Website und es scheint der beste Weg, dies zu tun ist mit der Bibliothek Anfragen. Mein Problem ist zu interpretieren, was ich an die Website in der Nutzlast senden muss. Als ich im HTML für die Seite anschaue, sehe ich dies:Anmelden in Website mit Skript mithilfe von Pythonanfragen

<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> 

Ist das mir zu sagen, ich sollte eine Nutzlast mit dem dict Eintrag ‚login_user_name‘ erstellen oder ist es mir zu sagen, sollte ich ‚userid‘ als die verwenden Name des Diktateintrags?

Sende ich dies an die URL, die die Anmeldeseite anzeigt, oder buche ich sie als URL 'login_action'?

Dank ...

+0

Sie benötigen die ** ** diese Seite zu schreiben, und Sie müssen Ihren Login-Benutzernamen im Feld "login_user_name" angeben. Das Wort 'userid' gibt es nur als Platzhalter, um Ihnen zu zeigen, dass Sie Ihren Benutzernamen/Passwort in diese Felder eingeben müssen. –

+0

Das ist, was ich dachte, aber wenn ich den Beitrag sende, bekomme ich HTML zurück, das sagt, dass der Benutzername oder das Passwort falsch ist, aber ich weiß, dass der Benutzername und das Passwort gut sind .... – mikey

Antwort

0

Es stellt sich heraus Sie auf die URL in dem 'login_action' Feld schreiben müssen. Sie müssen auch "userid" und "password" in der Payload verwenden, nicht das Zeug auf der linken Seite. Die endgültige Nutzlast muss so aussehen:

payload = { 
    'userid' : 'myusername', 
    'password' : 'mypassword', 
    'target' : '', 
    'smauthreason' : '', 
    'smquerydata' : '', 
    'smagentname' : '', 
    'postpreservationdata' : '', 
    'SMENC' : '', 
    'SMLOCALE' : '' 
} 

Das Problem ist jetzt, dass die Daten, die ich zurückbekommen sagt, ich war nicht in der Lage umgeleitet werden ...

Verwandte Themen