2

我正在使用 Chrome 进行硒工作。我正在访问的网页动态更新。我需要显示结果的 html,我可以在“检查元素”时访问它。我不知道如何从我的代码中访问该 html。我总是得到原始的html。

我试过这个:Get HTML Source of WebElement in Selenium WebDriver using Python

browser.get('http://bijsluiters.fagg-afmps.be/?localeValue=nl')
searchform = browser.find_element_by_class_name('iceInpTxt')
searchform.send_keys('cefuroxim')
button = browser.find_element_by_class_name('iceCmdBtn').click()

element = browser.find_element_by_class_name('contentContainer')
html = element.get_attribute('innerHTML')
browser.close()
print(html)
4

1 回答 1

1

经过一段时间的延迟,它似乎正在工作。如果我是你,我应该尝试尝试延迟时间。

from selenium import webdriver
import time

browser = webdriver.Chrome()

browser.get('http://bijsluiters.fagg-afmps.be/?localeValue=nl')
searchform = browser.find_element_by_class_name('iceInpTxt')
searchform.send_keys('cefuroxim')
button = browser.find_element_by_class_name('iceCmdBtn').click()

time.sleep(10)

element = browser.find_element_by_class_name('contentContainer')
html = element.get_attribute('innerHTML')
browser.close()
print(html)

添加:一个更好的方法是在元素可用时让脚本继续执行(因为在将特定元素添加到 DOM 之前(例如)使用 JS 需要时间)。在您的示例中要查找的元素是带有 id 的表iceDatTbl(快速查看后我可以找到)。

于 2019-05-16T17:58:15.470 回答