如何从selenium中未出现在源代码中的元素中获取HTML代码?

时间:2018-06-11 02:16:26

标签: python selenium beautifulsoup

我正在使用Web抓取的应用程序,但我很难弄清楚如何从网页获取一些数据。当我在Firefox中使用“inspect element”时,我可以看到我正在寻找的信息:

事情是,它没有出现在页面的HTML代码中,我实际上可以使用selenium,我寻找的数据显然是数据库驱动的,我卡在那里,有没有办法用硒将其废弃?

这是网址:http://2ez.gg/#gg?name=Doombag&server=lan

2 个答案:

答案 0 :(得分:0)

您可能应该尝试抓取http://lan.op.gg/summoner/userName=Doombag,而http://2ez.gg/#gg?name=Doombag&server=lan包含一个iframe,这就是为什么您无法在文档正文中找到55%。

答案 1 :(得分:0)

原因是您要检索的数据包含在iframe内部,这导致selenium无法直接访问数据。 请尝试以下代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver=webdriver.Chrome()
URL='http://2ez.gg/#gg?name=Doombag&server=lan'

driver.get(URL)
driver.switch_to.frame('iframe-content')
elem=driver.find_element_by_css_selector('.WinRatioGraph div.Text')
print(elem.text)

输出:55%