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
我在問題中增加了一些更多信息,這應該解釋爲什麼我正在嘗試上述路線 –