Ich schreibe ein Programm mit Python und Selen, um die Anmeldung in einer Website zu automatisieren. Die Website stellt eine Sicherheitsfrage zur zusätzlichen Überprüfung. Offensichtlich würde die Antwort, die ich mit "send_keys" senden würde, von der gestellten Frage abhängen, so dass ich herausfinden muss, was auf der Grundlage des Textes gefragt wird. BeautifulSoup kann verwendet werden, um den HTML-Code zu analysieren, aber in allen Beispielen, die ich gesehen habe, müssen Sie eine URL angeben, um den Seiteninhalt zu lesen. Wie lese ich den Inhalt einer bereits geöffneten Seite? Der Code Ich verwende ist:Laden Sie HTML einer Webseite herunter, die bereits geladen ist
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
chromedriver = 'C:\\Program Files\\Google\\chromedriver.exe'
browser = webdriver.Chrome(chromedriver)
browser.get('http://www.aaaa.com')
loginElem = browser.find_element_by_id('bbbb')
loginElem.send_keys('cccc')
passwordElem = browser.find_element_by_id('dddd')
passwordElem.send_keys('eeee')
passwordElem.send_keys(Keys.RETURN)
Die Seite mit den Sicherheitsfragen lädt danach und das ist die Seite, die ich die URL möchten. Ich habe auch versucht, nach Element zu finden, aber aus irgendeinem Grund war es nicht funktioniert, weshalb ich einen Workaround versuche. Im Folgenden finden Sie den HTML-Code für die gesamte div-Klasse, in der sich die Frage befindet. Alternativ können Sie mir vielleicht helfen, nach dem richtigen zu suchen.
<div class="answer-section">
<p> Please answer your challenge question so we can help
verify your identity.
</p> <label for="tlpvt-challenge-answer"> What is the name of your dog?
</label>
<input type="text" id="tlpvt-challenge-answer" class="tl-private gis- mask"
name="challengeQuestionAnswer" value=""/>
</div>
warum brauchen Sie 'BeautifulSoup' dafür? Sie können einfach das HTML-Element mit 'loginElem = browser.find_element_by_id ('bbbb')' oder einer anderen Methode in 'selen' aufrufen und dann' loginElem.text' (das war ein Beispiel, ich sage nicht, dass das ist das Element, dessen Text du parsen musst) – odradek
Ich habe der Frage einige weitere Informationen hinzugefügt, die erklären sollten, warum ich die obige Route versuche –