我正在尝试从以下网站获取数据:
http://www.mcxindia.com/SitePages/RealTimeData.aspx
但是源文件只有JS代码,我需要财务数据,我正在通过selenium来获取它们。但我仍然无法在 selenium 中找到类名,但当我执行“检查元素”时,会出现类名。下面是代码:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium import webdriver
# Start the WebDriver and load the page
wd = webdriver.Firefox()
wd.get("http://www.mcxindia.com/SitePages/RealTimeData.aspx")
# Wait for the dynamically loaded elements to show up
WebDriverWait(wd, 30).until(
EC.visibility_of_element_located((By.CLASS_NAME, "tablerow")))
# And grab the page HTML source
html_page = wd.page_source
print html_page
wd.quit()
非常感谢您的帮助!
最佳答案
该表位于 iframe 内。查看有关 Selenium 语言绑定(bind)的文档,了解如何切换到新框架的说明。
以 Java 为例:
driver.switchTo().frame("name or ID");
您需要查看页面上的 DOM,以获取 iframe 根目录所需的定位器,但这并不困难。
另外,要注意...如果您在完成 iframe 内的任何步骤后要执行任何其他操作,则需要先切换回主页,然后再继续。
关于javascript - 动态加载网页的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24989959/