0
我正在编写一个使用Python和硒自动登录网站的程序。该网站要求提供安全问题以进一步验证。很显然,我使用“send_keys”发送的答案取决于所问的问题,因此我需要根据文本找出正在询问的内容。 BeautifulSoup可以用来解析HTML,但在所有我见过的例子中,你必须给出一个URL然后阅读页面内容。我如何阅读已经打开的页面的内容?我正在使用的代码是:下载已加载网页的html
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)
带有安全问题的页面在此之后加载,这就是我想要的URL的页面。 我也尝试过查找元素,但由于某种原因,它不工作,这就是为什么我正在尝试一种解决方法。下面是问题所在的整个div类的HTML。或者,也许你可以帮助我寻找合适的人。
<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>
你为什么需要'BeautifulSoup'为了那个原因?你可以用'loginElem = browser.find_element_by_id('bbbb')'或者'selenium'中的任何其他方法获取HTML元素,然后执行'loginElem.text'(这是一个例子,我不是说这是您需要解析的文本元素) – odradek
我在问题中增加了一些更多信息,这应该解释为什么我正在尝试上述路线 –