什么是硒?
当您打开Selenium的官方页面时,您首先读到的是“什么是Selenium?”中的“ Selenium automates browser”。部分。“硒的哪个部分适合我?”部分 下面提供了Selenium WebDriver和Selenium IDE之间的选择。据此,我推断出Selenium是工具的集合,该集合包括IDE,WebDriver API(语言绑定),Grid,Selenium Standalone Server,浏览器驱动程序。必须下载适当的文件才能构建项目。
什么是WebDriver?
WebDriver是一个API。它用多种语言编写,这些语言称为语言绑定。API具有控制浏览器的功能。您可以使用这些功能编写脚本来以所需的方式(测试用例)控制浏览器。
这就是我所知道的。如果我错了,请纠正我。我想从面试的角度知道这两个问题的答案。
我正在尝试抓取从鼠标悬停事件动态生成的数据。
我想从https://slushpool.com/stats/?c=btc的哈希率分布图表中捕获信息,该图表是在滚动每个圆圈时生成的。
下面的代码从网站获取 html 数据,并返回鼠标经过一个圆圈时填充的表格。但是,我无法弄清楚如何触发每个圆圈的鼠标悬停事件以填充表格。
from lxml import etree
from xml.etree import ElementTree
from selenium import webdriver
driver_path = "#Firefox web driver"
browser = webdriver.Firefox(executable_path=driver_path)
browser.get("https://slushpool.com/stats/?c=btc")
page = browser.page_source #Get page html
tree = etree.HTML(page) #create etree
table_Xpath = '/html/body/div[1]/div/div/div/div/div[5]/div[1]/div/div/div[2]/div[2]/div[2]/div/table'
table =tree.xpath(table_Xpath) #get table using Xpath
print(ElementTree.tostring(table[0])) #Returns empty table.
#Should return data from each mouseover event
Run Code Online (Sandbox Code Playgroud)
有没有办法触发每个圆圈的鼠标悬停事件,然后提取生成的数据。
预先感谢您的帮助!