Python - Requests, Selen - übergeben von cookies bei der Anmeldung in
Ich würde gerne integrieren python Selenium und Anfragen-Module zur Authentifizierung auf einer Webseite.
Ich bin mit dem folgenden code:
import requests
from selenium import webdriver
driver = webdriver.Firefox()
url = "some_url" #a redirect to a login page occurs
driver.get(url) #the login page is displayed
#making a persistent connection to authenticate
params = {'os_username':'username', 'os_password':'password'}
s = requests.Session()
resp = s.post(url, params) #I get a 200 status_code
#passing the cookies to the driver
driver.add_cookie(s.cookies.get_dict())
Das problem ist, dass wenn ich in den browser die login-Authentifizierung ist immer noch da, wenn ich versuche, auf die url
obwohl ich an den cookies generierten Anfragen Sitzung.
Wie kann ich den code ändern, der oben ist, um durch die Authentifizierung web-Seite?
Kann mir jemand helfen bei diesem Problem?
Ihre Hilfe wird viel geschätzt.
Beste Grüße.
Dies sind zwei verschiedene clients mit zwei verschiedenen Sitzungen - Sie können sich nicht vermischen Sie auf diese Weise. Versuchen Sie, komplette script auf
Ich dachte, vorbei an den cookies würde das problem behoben als ich öffne den browser mit den cookies generierten Anfragen Sitzung. Ist es nicht der Fall ist, dann?
Versuchen Sie, zu aktualisieren
Ich hab das gleiche Problem
Meine Vermutung ist, Sie senden POST-Anforderung zu einer falschen URL. Viele websites verwenden eine andere URL (im Vergleich zu den login-landing-URL) für die Authentifizierung
requests
oder komplett auf selenium
. Auch könnte Sie brauchen, um zu versuchen pypi.python.org/pypi/selenium-requestsIch dachte, vorbei an den cookies würde das problem behoben als ich öffne den browser mit den cookies generierten Anfragen Sitzung. Ist es nicht der Fall ist, dann?
Versuchen Sie, zu aktualisieren
headers
mit gleichen User-Agent
info, z.B. "User-Agent": "Mozilla/5.0"
Ich hab das gleiche Problem
Meine Vermutung ist, Sie senden POST-Anforderung zu einer falschen URL. Viele websites verwenden eine andere URL (im Vergleich zu den login-landing-URL) für die Authentifizierung
InformationsquelleAutor AntoG | 2017-02-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich endlich herausgefunden, was das problem war.
Bevor die
post
Anfrage mit derrequests
Bibliothek, ich sollte bestanden haben, die cookies, die der browser zuerst.Der code ist wie folgt:
InformationsquelleAutor AntoG